C STL之multimap多重映照容器

2021-07-05 21:06:57 字數 1543 閱讀 2405

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 ...