Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Function 调用变量输出号的函数_Function_Matlab_Parameters_Output - Fatal编程技术网

Function 调用变量输出号的函数

Function 调用变量输出号的函数,function,matlab,parameters,output,Function,Matlab,Parameters,Output,我发现自己试图用内置函数连接自定义类,遇到了一种只能用eval解决的情况,我想要一种“更干净”的方法 基本上,内置函数定义为varargout=blablabla(varargin) 我在自定义类中定义了一个重写函数,如varargout=blablabla(varargin)。该函数如下所示: function varargout=blabla(varargin) varargout=blabla(function_of_varargin) end varargin的函数将其从自定义

我发现自己试图用内置函数连接自定义类,遇到了一种只能用eval解决的情况,我想要一种“更干净”的方法

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

function varargout=blabla(varargin)
    varargout=blabla(function_of_varargin)
end
varargin
的函数将其从自定义类转换为内置类

但它不能按原样工作:基本上,当在重写函数内调用内置函数时,它只看到一个输出参数(
varargout
),即使使用多个输出参数调用自定义重写函数也是如此

我基本上是这样解决的:

[varargout{1},varargout{2},...,varargout{nargout}]=blabla(function_of_varargin)
使用循环和评估构建LHS。

您是否尝试过以下方法:

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

好吧,你知道什么,当matlab知识枯竭时,总会有一些神奇的语法让它工作。它工作得非常完美,感谢+1好的捕获:)这不仅限于类和成员函数。也适用于普通函数。@angainor:是的。应用于单元阵列的单元阵列扩展
varargin
varargout
——经常被忽略。它们实际上只是普通的单元阵列:)看看