1

我有一个 mat 文件和一个 gui 在 matlab 命令窗口上运行顺利,但是当我编译它时它显示一个错误说:

??? Error using ==> charms_OutputFcn
variable output array 'varargout' must be a cell array.
Error in ==> gui_mainfcn 248
Error in ==> charms at 40

MATLAB:VarargoutNotCell
Warning:1 visible figure(s) exist at MCR termination

我的第 40 行是这样的:

  [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

我该如何解决这个问题,谢谢。

4

2 回答 2

2

像这样的东西:

varargout = cell(1,nargout);
[varargout{:}] = gui_mainfcn(gui_State, varargin{:});

我认为 Matlab 函数deal是这种操作的原型示例。 edit deal看看 Mathworks 是如何做到的。

于 2012-03-06T06:53:38.817 回答
0

首先,应该移除周围{}:我很惊讶它甚至会运行!

其次,您需要varargout使用命令初始化为正确大小的元胞数组cell

于 2012-03-05T20:28:05.520 回答