C++STL之map型容器
Map簡介
map型容器是(鍵key-值value)對的集合。map型容器通常可理解為關聯陣列,可使用鍵(key)作為下標來擷取對應的值,類似於內建數群組類型。關聯的本質在於元素的值與某個特定的鍵相聯絡,而不是通過在數組中的位置來實現關聯的。
總而言之,map是由許多對的索引值組成的排序結構體,而且索引值是獨一無二的。
multimap型容器和map型容器基本是一致的。只是前者允許重複元素,而map不允許重複。
multimap:一個key能對應多個value。
map: 一個key只能對應一個value。
成員函數簡介與常用公式寫法
【變數聲明】
map<string, string> v1;
map<int, string> v2; //不止這幾類
【插入元素】
//用insert函數插入pair
v.insert(pair<string, string>("r000", "student_zero"));
v.insert(pair<int,string>(100,"ac"));
//用"array"方式插入,這是最簡單常用的方法
v["r123"] = "student_first";
v[100] = "ac";
【尋找元素】
find()函數返回一個迭代器指向索引值為key的元素,如果沒找到就返回指向map尾部的迭代器。
map<int,string>::iterator it;
it=v.find(112);
if(it==v.end()) //沒找到
cout<<"we do not find 112"<<endl;
else cout<<"wo find 112"<<endl;
【刪除元素】
map<int,string>::iterator it;
it=v.find(112);
if(it==v.end())
cout<<"we do not find 112"<<endl;
else v.erase(it); //找到後刪除112;
本文永久更新連結地址:https://www.bkjia.com/Linux/2018-03/151301.htm