C 遍歷容器的4種方式

2022-06-04 06:15:14 字數 873 閱讀 8052

定義乙個map用來演示本次的遍歷:

std::maptest;

test.insert(std::make_pair(1, "test"));

test.insert(std::make_pair(2, "product"));

方式1:利用迭代器

iterator顯示宣告

for (std::map::iterator iter = test.begin(); iter != test.end(); iter++)

iterator auto關鍵字自動推斷型別

for (auto iter = test.begin(); iter != test.end(); iter++)

方式2:利用for each語法

for each,型別顯示宣告

for each (std::pairtt in test)

for each, auto關鍵字自動推斷型別

for each (auto tt in test)

方式3:利用增強型for迴圈

增強型for迴圈

for (auto iter : test)

for(auto a:b)中b為乙個容器,效果是利用a遍歷並獲得b容器中的每乙個值,但是a無法影響到b容器中的元素。

for(auto &a:b)中加了引用符號,可以對容器中的內容進行賦值,即可通過對a賦值來做到容器b的內容填充。

方式4:如果是vector容器,可以直接採用下表訪問

C vector容器的4種遍歷方式

首先定義三個結構體,注意初始化 struct cvector2 float x float y struct cvector3 float x float y float z struct obj 然後介紹遍歷方式 obj obbject cvector2 elem2 cvector3 elem3 ...

Map的4種遍歷方式

mapmap new hashmap map.put 1,duck map.put 2,adult map.put 3,pond map.put 4,ocean map.put 5,elevator map.put 6,frog 第一種遍歷方式 通過map.keyset 先拿到key的set集合,再...

map的4種遍歷方式

1 public static void main string args 1415 第二種 16 system.out.println 通過map.entryset使用iterator遍歷key和value 17 iterator it map.entryset iterator 18while ...