0
說一個具有下面的代碼:本徵動態矩陣大小
cout<< sizeof(Eigen::Matrix<double, -1, -1 , 0 , 10, 10>)<<endl;
cout<< sizeof(Eigen::Matrix<double, -1, -1>)<<endl;
第一行輸出3664個字節,並且第二個,24個字節。
我想了解爲什麼指定最大尺寸的結果呢?
計算機體系結構是x64。
說一個具有下面的代碼:本徵動態矩陣大小
cout<< sizeof(Eigen::Matrix<double, -1, -1 , 0 , 10, 10>)<<endl;
cout<< sizeof(Eigen::Matrix<double, -1, -1>)<<endl;
第一行輸出3664個字節,並且第二個,24個字節。
我想了解爲什麼指定最大尺寸的結果呢?
計算機體系結構是x64。
HM,你可能做了複製粘貼錯誤,因爲,正如所料,我得到:
816
24
事實上,作爲Eigen::Matrix文檔中解釋,在編譯時量指定的最大尺寸,在你的情況,到以下結構:
struct {
double data[10*10]; // 800 Bytes
long rows, cols; // 16 Bytes
};