C 中vector的巢狀使用

2021-10-06 22:00:21 字數 1263 閱讀 3419

目錄

1、定義

2、新增元素

3、訪問元素

4、長度

5、二維字元陣列

vector> m;

這裡是vector的巢狀使用,本質是vector元素裡的每個元素也是vector型別,所以抓住本質來新增元素就比較容易理解。

我們假設外層的vector的物件為m,為外層vector物件,則m中的每乙個元素也是vector型別,記為n1,n2,n3……,為內層物件

則,我們得先形成乙個個的n1,n2等的vector物件,然後再將這些vector物件新增進入外層vector物件m中

這樣就比較容易理解向vector>物件新增元素的原理了,實現如下:

如m=[[1 2 3], [4 5 6]],新增方式如下:

vectorint>> m;

//外層vector物件m

vector<

int> n;

//內層vector物件 n.

push_back(1

);n.push_back(2

);n.push_back(3

);//已經形成第乙個內層vector物件n1 m.

push_back

(n);

//將形第乙個內層vector物件n新增到外層vector物件m中

n.clear()

;//清楚n中的元素,可以繼續存放後續vector物件 n.

push_back(4

);n.push_back(5

);n.push_back(6

);//已經形成第乙個內層vector物件n2 m.

push_back

(n);

//將形第乙個內層vector物件n新增到外層vector物件m中

n.clear()

;//清楚n中的元素,可以繼續存放後續vector物件

訪問元素和二維陣列相同,m[0][0],訪問m中第乙個vector物件的第乙個元素,值為1;

(1)m中vector的個數:m.siz();

(2)m中第i個vector元素的長度:m[i].size();

如下,初始化了乙個二維字元陣列,其中每個元素都初始化為. ```bash vector res(10,string(10,'.')); ``` 可以採用res[i][j]訪問每個元素。

目錄

C 中vector的使用

vector是c 標準模板庫中的容器,能夠操作多種資料結構。1.標頭檔案 include vector屬於std命名域 2.建立vector物件 vectorivec 3.基本操作 1 尾部插入數字 ivec.push back ivec 2 使用下標訪問元素,cout 3 使用迭代器訪問元素 ve...

STL中map 和vector巢狀使用示例

pragma warning disable 4786 include include include include include using namespace std typedef mapstring2string typedef std map string2vector int mai...

C 中的vector使用範例

前幾天乙個同學問我c 裡面的vector的使用,我研究了一下,先總結如下 1.vector 的資料的存入和輸出 include include include using namespace std void main int i 0 vectorv for i 0 i 10 i v.push ba...