MATLAB 中可以有默认参数吗?
例如,这里:
function wave(a, b, n, k, T, f, flag, fTrue=inline('0'))
我希望真正的解决方案是波函数的可选参数。如果可能的话,正确的方法是什么?
目前,我正在尝试上面发布的内容,我得到:
??? Error: File: wave.m Line: 1 Column: 37
The expression to the left of the equals sign is not a valid target for an assignment.
没有像您尝试过的直接方法来做到这一点。
通常的方法是使用“varargs”并检查参数的数量。就像是:
function f(arg1, arg2, arg3)
if nargin < 3
arg3 = 'some default'
end
end
您可以做一些更奇特的事情isempty
等等,您可能想查看 MATLAB Central 中的一些捆绑此类内容的软件包。
你可能会看看varargin
, nargchk
等等。它们对于这类事情来说是有用的函数。varargs允许您留下可变数量的最终参数,但这并不能解决其中一些/全部默认值的问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)