c++中map容器的使用詳解
C++中map容器提供一個(gè)鍵值對(duì)容器,map與multimap差別僅僅在于multiple允許一個(gè)鍵對(duì)應(yīng)多個(gè)值。
一、map的說(shuō)明
1頭文件
#include <map>
2定義
map<string,int>my_Map;
或者是
typedefmap<string,int>MY_MAP; MY_MAPmy_Map;
3插入數(shù)據(jù)
my_Map["a"]???=???1;? ? my_Map.insert(map<string,???int>::value_type("b",2));? my_Map.insert(pair<string,int>("c",3));? my_Map.insert(make_pair<string,int>("d",4));?
第一種:用insert函數(shù)插入pair數(shù)據(jù),下面舉例說(shuō)明:
第二種:用insert函數(shù)插入value_type數(shù)據(jù),下面舉例說(shuō)明:
第三種:用數(shù)組方式插入數(shù)據(jù),下面舉例說(shuō)明:
4查找數(shù)據(jù)和修改數(shù)據(jù)
int i = my_Map["a"]; my_Map["a"] = i; MY_MAP::iterator my_Itr; my_Itr.find("b"); int j = my_Itr->second; my_Itr->second = j;
不過(guò)注意,鍵本身是不能被修改的,除非刪除。
5刪除數(shù)據(jù)
my_Map.erase(my_Itr);? my_Map.erase("c");? ??
還是注意,第一種情況在迭代期間是不能被刪除的,道理和foreach時(shí)不能刪除元素一樣。
6迭代數(shù)據(jù)
for(my_Itr=my_Map.begin();my_Itr!=my_Map.end();++my_Itr){ }
7其它方法
my_Map.size() 返回元素?cái)?shù)目
my_Map.empty() 判斷是否為空
my_Map.clear() 清空所有元素
可以直接進(jìn)行賦值和比較:=, >, >=, <, <=, != 等等
到此這篇關(guān)于c++中map容器的使用詳解的文章就介紹到這了,更多相關(guān)c++中的map容器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
windows系統(tǒng)下C++調(diào)用matlab程序的方法詳解
這篇文章主要給大家介紹了關(guān)于在windows系統(tǒng)下C++調(diào)用matlab程序的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用C++具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-08-08深度剖析C++對(duì)象池自動(dòng)回收技術(shù)實(shí)現(xiàn)
今天小編就為大家分享一篇關(guān)于深度剖析C++對(duì)象池自動(dòng)回收技術(shù)實(shí)現(xiàn),小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-01-01Linux下使用C/C++進(jìn)行UDP網(wǎng)絡(luò)編程詳解
UDP 是User Datagram Protocol 的簡(jiǎn)稱(chēng),中文名是用戶(hù)數(shù)據(jù)報(bào)協(xié)議,是一種無(wú)連接、不可靠的協(xié)議,本文主要介紹了如何在Linux下使用C/C++進(jìn)行UDP網(wǎng)絡(luò)編程,有需要的可以了解下2024-10-10基于Qt實(shí)現(xiàn)駕校科目考試系統(tǒng)的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何基于Qt實(shí)現(xiàn)駕??颇靠荚囅到y(tǒng),文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Qt有一定幫助,需要的可以參考一下2022-07-07C++?TCP網(wǎng)絡(luò)編程詳細(xì)講解
TCP/IP是一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議,它會(huì)保證數(shù)據(jù)不丟包、不亂序。TCP全名是Transmission?Control?Protocol,它是位于網(wǎng)絡(luò)OSI模型中的第四層2022-09-09