使用';完整';在MATLAB函数参数中
在一些库中,例如CVX下面的库,我注意到参数使用';完整';在MATLAB函数参数中,matlab,function,Matlab,Function,在一些库中,例如CVX下面的库,我注意到参数full。我似乎找不到任何文档来解释这是什么以及它为什么存在。有人能解释一下吗 编辑:正如建议的那样,这里有一个例子。请注意,这是整个函数 function y = cvx_isaffine( x, full ) narginchk(1,2); if nargin == 1, y = true; else y = true( size( x ) ); end 在这个函数中,如果nargin==1,则测试检查第二个输入参数full是否
full
。我似乎找不到任何文档来解释这是什么以及它为什么存在。有人能解释一下吗
编辑:正如建议的那样,这里有一个例子。请注意,这是整个函数
function y = cvx_isaffine( x, full )
narginchk(1,2);
if nargin == 1,
y = true;
else
y = true( size( x ) );
end
在这个函数中,如果nargin==1,则测试
检查第二个输入参数full
是否给出。如果是,则输出是与x
大小相同的逻辑数组。如果不是,则输出为标量逻辑数组
就是
M = randn(10,3);
cvx_isaffine(M)
返回true
,而
cvx_isaffine(M,1)
返回一个10x3数组,其中所有元素均为true
您可以为第二个参数填写任何您想要的内容,因为它的值不在任何地方使用。仅仅第二个参数的存在就是行为改变的标志
该功能似乎没有文档化,因为它是供内部使用的,而不是供最终用户使用