(我知道我问了很多关于这个的问题!)
基本上,我正在尝试将一些代码从 Matlab 转换为 C++,我遇到了这个:
n = sum(size(blocks)) - len;
现在我计算了 vector 的总和,并且有了长度,但我不知道“大小”是做什么的?因为在 C++ 中 .size() 将返回 vector 的大小。
有什么想法吗? (不要求代码)!
最佳答案
在 MatLab 中,size
返回 vector (或矩阵)的所有维度的 vector 。因此,如果 blocks
是 4x2 矩阵,则 sum(size(blocks))
将返回 6
。如果维数为 2 或更少,则结果始终包含 2 个元素。 ie 长度为 5 的列 vector 将返回 [5 1]
,而相同长度的行 vector 将返回 [1 5]
。
看到sum(size(?))
有点奇怪。您经常会看到 prod
而不是 sum
,它将所有维度相乘。
无论如何,希望您的问题得到满意的回答 =)
关于c++ - 尺寸、长度换算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11999430/