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