multimap與map基本相似,兩者的區別在與,multimap允許插入重複的鍵值。由於允許插入重複的減值,所以multimap與map的元素插入、刪除、查詢有一些不同。
*multimap物件的建立、元素的插入
可以插入重複的鍵值
#pragma warning(disable:4786)
#include#include#includeusing namespace std;
int main()
{ multimapm;
m.insert(pair("caicai", 90.5));
m.insert(pair("ningbo", 88.5));
m.insert(pair("zhejiang", 45.3));
m.insert(pair("zhejiang", 95.5));
//使用前向迭代器遍歷
multimap::iterator it;
for(it = m.begin(); it != m.end(); it ++)
cout<<(*it).first<<" : "<<(*it).second<
*元素的刪除與查詢
由於multimap存在重複的鍵值,所以find()方法返回重複鍵值中的第乙個元素的迭代器位置,如果沒有找到該鍵值,則返回end()的位置
multimap的刪除操作,可以刪除重複的鍵值。
#pragma warning(disable:4786)
#include#include#includeusing namespace std;
int main()
{ multimapm;
m.insert(pair("caicai", 90.5));
m.insert(pair("ningbo", 88.5));
m.insert(pair("zhejiang", 45.3));
m.insert(pair("zhejiang", 95.5));
//使用前向迭代器遍歷
multimap::iterator it;
for(it = m.begin(); it != m.end(); it ++)
cout<<(*it).first<<" : "<<(*it).second<#include#includeusing namespace std;
int main()
{ multimapm;
m.insert(pair("caicai", 90.5));
m.insert(pair("ningbo", 88.5));
m.insert(pair("zhejiang", 45.3));
m.insert(pair("zhejiang", 95.5));
//使用前向迭代器遍歷
multimap::iterator it;
for(it = m.begin(); it != m.end(); it ++)
cout<<(*it).first<<" : "<<(*it).second<
ok,到此multimap就介紹完了。基本上足夠使用了
C STL常用操作之multimap篇
multimap和map其實很相似但是multimap是允許重複元素的。map詳見 如此,我們可以看到,我們插入了三個鍵值key均為520的元素,這個操作在multimap中是合法的。multimap int,string multi multi.insert pair int,string 520...
STL(十四)multimap多重映照容器
multimap與map一樣,都是使用紅黑樹對記錄型的元素資料按元素鍵值的比較關係,進行快速的插入 刪除與檢索操作,所不同的是multimap允許將具有重複鍵值的元素插入容器。在multimap容器中,元素的鍵值與元素的映照資料的映照關係,是多對多的,因此,multimap稱為多重映照容器。mult...
STL泛型程式設計 multimap多重映照容器
multimap與map基本相同,唯一不同的是multimap允許插入重複鍵值的元素。由於允許重複鍵值存在,multimap的元素插入,刪除,查詢都與map不同。要使用multimap,需要標頭檔案 include multimap物件建立 元素插入。可以重複插入元素,插入元素需要使用insert ...