STL中map的巢狀使用

2021-06-08 18:25:25 字數 688 閱讀 7037

最近開發中要用到stl,然後自己檢視了一些資料,並寫了一些**。在使用中,想起了如果是map巢狀,該如何應用呢?下面是我的coding內容:

對於傳統的map,我們只需要:

#include

#include

int main()  

return 0;}

結果輸出:

100  maxi

200 xiaoma

300 xiaoyu

由此可以看出,scores[100]="maxi"會直接替換掉原來100map對應的value,而如果呼叫scores.insert()函式,則由於本map是單對映的,

但如果我想定義巢狀的map並對它進行遍歷,該如何進行呢:

#include

#include

int main()  

return 0;

} 執行結果如下:

5 30 (xiaoma)

10 80 (xiaoyu)

10 90 (hi)

10 100 (maxi)

總結,map的成員加入有兩種賦值方法,一種是呼叫map.insert()函式,這樣,由於是單對映,後面加入的新的pair對如果有key值和前面一樣,那麼後面的pair對元素將不會被加入到map中;但如果是直接[ ]=賦值操作的話,相當於陣列賦值,會直接替換掉原來具有相同key域的pair對。

STL中map 和vector巢狀使用示例

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

stl中map的使用

map與set類似,都是乙個關聯式容器,但是與set不同的是他鍵值分離的,key,value 結構,在map結構中元素是不允許重複的。在學習的過程中,我們需要主要一些問題 就是在關聯式容器中,當資料很大的時候,使用其中的查詢演算法是很快速的,應該使用其提供的函式來實現查詢函式等等高,會比使用stl中...

STL中的map使用

set 集合 包含了經過排序了的資料,這些資料的值 value 必須是唯一的。map 對映 經過排序了的二元組的集合,map中的每個元素都是由兩個值組成,其中的key 鍵值,乙個map中的鍵值必須是唯一的 是在排序或搜尋時使用,它的值可以在容器中重新獲取 而另乙個值是該元素關聯的數值。map和set...