如果我有一个功能:
function [out1,out2,...] = functionName[in1,in2]
function code here
end
还有另一个功能
function[newout1,newout2] = newfunctionName[in1,in2]
[newout1]=out1+out2;
[newout2]=out2+out3;
我该如何调用各种输出,out1、out2、out3 等...
如果我有一个功能:
function [out1,out2,...] = functionName[in1,in2]
function code here
end
还有另一个功能
function[newout1,newout2] = newfunctionName[in1,in2]
[newout1]=out1+out2;
[newout2]=out2+out3;
我该如何调用各种输出,out1、out2、out3 等...
我不太明白您所说的“调用各种输出、out1、out2、out3 等”是什么意思,但要回答标题的问题,
为了访问任何函数的第 n 个输出,您必须首先在该函数的名称上调用nargout,然后将其输出插入到预先分配大小的单元格中。下面的示例代码,
n = 5;
nout = abs(nargout('functionName'));
if n>nout
error(['n must be lower or equal than ',num2str(nout)])
end
out = cell(1,n);
[out{:}] = functionName(in1,in2);
nth_output = out{n};
这可以functionName
在其路径中的任何函数内完成。