逗号分隔或不是MATLAB函数返回有什么区别?

时间:2016-07-19 15:20:01

标签: matlab

我在MATLAB中的一些函数返回之间忘记了逗号并且没有抱怨。

function [returnA, returnB]=foo(paramA)
    returnA=ones(1,10).*paramA;
    returnB=magic(4);
end

function[]=voo()
    %typing the return as this
    [A,B]=foo(5);
    %gives the same result as
    [A B]=foo(5);
end

我的问题是:这是完全相同的行为吗?我无法在文档

中找到它

1 个答案:

答案 0 :(得分:4)

是的,这与您在问题中提供的代码所示的行为相同。

正如@LuisMendo在评论中指出的那样,如果你在编辑器中查看MATLAB的lint(又名代码分析器)消息,你会看到:

  

最佳做法是使用逗号分隔输出变量

这意味着两种语法都有效。关于为什么这是我不确定的情况,我无法找到任何特定的东西,往往指向"只是因为。"正如@rayryeng在评论中指出的那样,它也可能与将语法与MATLAB comma-separated lists对齐。