在 MATLAB 中,您可以轻松地创建整数数组
N = 100; % Number of points
A = 1:N; % row vector of 1,2,3,..., 100
如果我想要一个列向量而不是行向量,我可以用
A = [1:N].';
现在,MATLAB 警告我
Use of brackets [] is unnecessary. Use parentheses to group if necessary.
好吧,它们并不是不必要的,因为 1:N.'
创建了一个行向量,因为只有标量 N
被转置,而不是整个数组。
我当然可以在该行、该文件或所有文件中抑制此消息,但为什么 MATLAB 首先抛出此警告,因为在这种情况下我似乎不能没有这些括号?
事实证明,混淆的很大一部分源于 MathWorks 使用美式英语,因为其他英语世界使用术语括号表示 ()
和 []
的术语方括号。参见 Wikipedia
最佳答案
正如 MATLAB 警告您的那样:如有必要,请使用括号进行分组。
在你的情况下,这是必要的。您希望 .'
应用于 1:N,因此使用括号 ()
。
方括号[]
是收集里面的元素,但是1:N
已经收集了
A=(1:N).';
关于matlab - MATLAB中方括号的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41038431/