在C++中matrix.size()和matrix [0] .size()之間的區別是什么?


確切的含義如下。在C++中沒有真正的2D矢量,但有std::vector<T>包含std::vector<T>

如果你聲明一個載體std::vector<int> vec(10)你有一個包含10個元素的向量。所以vec.size()是10.

如果你聲明std::vector<std::vector<int>> vec(10, std::vector<int>(10))你有一個有10個元素的向量,每個元素包含一個包含10個元素的向量。因此vec[0]std::vector<int>類型。

如果你想知道這個向量(含義是vec[0])包含多少元素,你可以很容易地做到vec[0].size()

如果您想要計算元素的總數,則需要計算vec中包含的矢量數與每個這些矢量包含的元素數的乘積。因此vec.size()*vec[0].size()

讓斷定:

我們有std::vector<std::vector<int>> vec(10,std::vector<int>(10))

  • 數量的行(的std::vector<int>包含在vec數):vec.size()
  • 列數(包含在每個元素的數量std::vector<int>):vec[0].size()
  • 元素總數:vec.size()*vec[0].size()

 

參考:http://cn.voidcc.com/question/p-dpnflznn-u.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM