(我知道我問了很多關於這個問題!)大小,長度轉換?
基本上,我想要一些代碼從MATLAB轉換爲C++和我遇到這樣的:
n = sum(size(blocks)) - len;
現在我已經計算了矢量的總和,我有這個長度,但我不知道「大小」是什麼?因爲在C++中.size()將返回向量的大小。
任何想法? (不要求代碼)!
(我知道我問了很多關於這個問題!)大小,長度轉換?
基本上,我想要一些代碼從MATLAB轉換爲C++和我遇到這樣的:
n = sum(size(blocks)) - len;
現在我已經計算了矢量的總和,我有這個長度,但我不知道「大小」是什麼?因爲在C++中.size()將返回向量的大小。
任何想法? (不要求代碼)!
d = size(X) return the sizes of each dimension of array X in a vector d.
最好說你有d = size(rand(2,3,4))
那麼這會返回d = 2 3 4。基本上它給你在該陣列中的每個塊的大小
在MatLab中,size
返回矢量(或矩陣)的所有維度的向量。所以如果blocks
是4x2矩陣,那麼sum(size(blocks))
將返回6
。如果維數爲2或更少,結果總是包含2個元素。 即長度爲5的列向量將返回[5 1]
,並且具有相同長度的行向量將返回[1 5]
。
看到sum(size(?))
有點奇怪。通常你會看到prod
而不是sum
,它將所有維度放在一起。
無論如何,希望回答你的問題,以滿意=)
告訴我這些東西是什麼類型。 – 2012-08-17 03:38:00
是什麼? sum是矢量塊的總和,尺寸我認爲是矢量的尺寸,長度是矢量的長度? – Phorce 2012-08-17 03:41:03
@Phorce'length'函數(這裏沒有提到)返回第一個非單實例維度的大小。 – paddy 2012-08-17 03:45:47