假设我有一个名为dummy
的函数,它有两个参数。当在函数调用中未提供参数时,这些参数可以具有默认值。但是如何知道某个参数未被提供呢?
我知道可以像这样使用nargin
:
function dummy(arg1, arg2)
if nargin < 2
arg2 = 0;
end
if nargin < 1
arg1 = 0;
end
% function body
我想知道是否可以根据参数名来检查参数是否被提供?类似于 supplied(arg2) == false
。
我问这个问题是因为有时候我想在参数列表前面添加新的参数(因为它可能没有默认值),然后我必须更改所有的if nargin ...
。如果我可以根据名称检查,就不需要更改任何东西了。
... | isempty(arg1)
,这样用户就可以跳过arg1
,但提供arg2
。当然,如果arg1
不能是空的。 - yuk||
(短路运算符)来确保在arg1
不存在时没有错误。 - Oli