C map巢狀應用

2021-07-25 17:51:47 字數 699 閱讀 4145

最近開發中要用到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()  

執行結果如下:

5 30 (xiaoma)

10 80 (xiaoyu)

10 90 (hi)

10 100 (maxi)

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

c map函式的應用

資料的插入 第一種 用insert函式插入pair資料 mapmapstudent mapstudent.insert pair 0,student one mapstudent.insert pair 1,student two mapstudent.insert pair 2,student t...

c map巢狀佇列 佇列巢狀結構體指標 ok

map中巢狀佇列,佇列中是結構體,有乙個問題,結構體中的值不更新 include include include include using namespace std struct revdata recv data map string queue revdata amap handle hmu...

C map應用之insert方法

直接上 兩種方式 mapm map m map.insert map value type hello 5 m map.insert make pair hello 5 也就是說,insert後面的資料是pair型別或者是value type型別了,然而對c 有了解的人都明白,其實value typ...