主要内容

检查嵌套函数中的参数数

本主题解释了使用的特殊考虑因素varargin.varargout., 和露狼嵌套功能。

varargin.varargout.允许您创建接受可变数量的输入或输出参数的函数。虽然varargin.varargout.看起来像函数名称,他们引用变量,而不是函数。这意味着很重要,因为嵌套函数共享包含它们的函数的工作空间。

如果你不使用varargin.要么varargout.在嵌套函数的声明中,然后varargin.要么varargout.在嵌套函数中,指的是外部功能的参数。

例如,在命名的文件中创建一个函数Showargs.m.使用varargin.并且有两个嵌套功能,其中一个使用varargin.一个没有的。

功能Showargs(varargin)嵌套1(3,4)嵌套2(5,6,7)功能嵌套1(a,b)disp('嵌套1:varargin {1}'的内容)DISP(varargin {1})结尾功能嵌套2(varargin)disp('嵌套2:varargin {1}'的内容)DISP(varargin {1})结尾结尾

调用函数并比较内容varargin {1}在两个嵌套功能中。

showargs(0,1,2)
嵌套1:varargin {1} 0嵌套2:varargin {1}的内容5

另一方面,露狼是功能。在任何函数中,包括嵌套函数,调用要么露狼返回该函数的参数数。如果嵌套功能需要值要么露狼从外部函数,将值传递给嵌套功能。

例如,在命名的文件中创建一个函数表现um.m.它将主要(父)函数的输入参数的数量传递给嵌套函数。

功能表现umargs(varargin)disp([“出现的输入数量:”,Int2str(nargin)]);巢德福克(Nargin,2,3,4)功能Nestedfx(n,varargin)disp([“巢的输入数量:',Int2str(nargin)]);DISP(['父母的输入数:',Int2str(n)]);结尾结尾

称呼展示尤其并比较输出在父级和嵌套函数中。

表现umargs(0,1)
显示的输入数量:2嵌套的输入数量:4个输入父级的输入数:2

也可以看看

|||