函数调用变量输出编号

时间:2012-10-17 12:29:55

标签: function matlab parameters output

我发现自己试图将自定义类与内置函数接口,我遇到了一个我只能用eval解决的情况,我想要一种“更清洁”的方式。

基本上,内置函数定义为varargout=blabla(varargin) 我在自定义类中定义了一个覆盖函数,varargout=blabla(varargin)。该函数如下所示:

function varargout=blabla(varargin)
    varargout=blabla(function_of_varargin)
end

varargin的功能将其从自定义类转换为内置clas。

但它不能按原样运行:基本上当在overriden函数内部调用内置函数时,它只能看到一个输出参数(varargout),即使调用自定义覆盖函数超过一个输出参数。

我通过基本上调用它来解决它:

[varargout{1},varargout{2},...,varargout{nargout}]=blabla(function_of_varargin)

用循环和评估构建LHS。

1 个答案:

答案 0 :(得分:7)

你试过这个:

[varargout{1:nargout}] = blabla(varargin{:})