【发布时间】:2012-05-23 17:08:31
【问题描述】:
我在 matlab 中有一个 fun(a,b,c) 形式的函数,当他调用该函数时,使用可能会或可能不会给出参数“c”。我必须稍后在该函数中在“c”上使用 switch case,因此需要检查用户是否使用 2 个或 3 个参数调用该函数?
如何做到这一点?
【问题讨论】:
标签: matlab parameters arguments argument-passing matlab-deployment
我在 matlab 中有一个 fun(a,b,c) 形式的函数,当他调用该函数时,使用可能会或可能不会给出参数“c”。我必须稍后在该函数中在“c”上使用 switch case,因此需要检查用户是否使用 2 个或 3 个参数调用该函数?
如何做到这一点?
【问题讨论】:
标签: matlab parameters arguments argument-passing matlab-deployment
您可以使用nargin:
function fun(a,b,c)
if (nargin < 3)
c = c_default_value;
end
switch c
或使用nargin 和varargin(此函数定义允许无限数量的参数):
function fun(a,b,varargin)
if (nargin < 3)
c = c_default_value;
else
c = varargin{1};
end
switch c
【讨论】: