为什么有人会在Matlab函数中返回数组中的矩阵?

时间:2011-03-24 15:16:31

标签: function matlab return-type

我在Matlab上很新,但我正在看一个像这样开始的函数:

function [res] = process(input)

在函数内部定义res,用输入中的字段做一些事情,并将这些事情的结果放在res中。我想知道在函数声明中使用[]而不是像

的原因是什么
function res = process(input)

我经常看到它。也许如果你们中的一个人可以说“把结果放在一个阵列中是好的,因为那样你就可以......” 感谢。

2 个答案:

答案 0 :(得分:6)

只有有多个输出时才需要方括号,即

function [res,other] = process(input)

如果只有一个输出,方括号是可选的,不会改变任何东西,除了在硬盘上使用更多的空间,或者在纸上打印时多一点墨水。

我的猜测是,该函数最初产生多个输出,后来被删除(方括号因此被遗忘),或者作者喜欢放置方括号以与多输出语法保持一致。

答案 1 :(得分:1)

考虑具有多个输出的情况,没有创建单个矩阵 基本上这就是适当的Matlab语法。 More details here.