逗号分隔与不分隔的MATLAB函数返回之间有什么区别?
我忘记了MATLAB中函数返回值之间的逗号,它没有抱怨逗号分隔与不分隔的MATLAB函数返回之间有什么区别?,matlab,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 我的问题
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
我的问题是:这是完全相同的行为吗?我在文档中找不到它是的,这与您在问题中提供的代码是一样的
正如@LuisMendo在评论中指出的,如果您在编辑器中查看MATLAB(又名代码分析器)消息,您将看到: 最佳实践是用逗号分隔输出变量
这意味着这两种语法都是有效的。至于为什么会出现这种情况,我不太清楚,我也找不到任何具体的指向“仅仅因为”的东西。正如@rayryeng在评论中指出的,这可能还与将语法与MATLAB对齐有关。是的,这是相同的行为。编辑说,如果你忘记了逗号“最佳做法是用逗号分隔输出变量”。这意味着不带逗号的版本也会被删除acceptable@LuisMendo那么为什么最好的做法是用逗号分隔输出变量呢?@EBH因为它遵循逗号分隔列表的惯例:主要是因为代码更可读