我在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
我的问题是:这是完全相同的行为吗?我无法在文档
中找到它答案 0 :(得分:4)
是的,这与您在问题中提供的代码所示的行为相同。
正如@LuisMendo在评论中指出的那样,如果你在编辑器中查看MATLAB的lint(又名代码分析器)消息,你会看到:
最佳做法是使用逗号分隔输出变量
这意味着两种语法都有效。关于为什么这是我不确定的情况,我无法找到任何特定的东西,往往指向"只是因为。"正如@rayryeng在评论中指出的那样,它也可能与将语法与MATLAB comma-separated lists对齐。