生活随笔
收集整理的這篇文章主要介紹了
STL中的multimap---顺便说说如何查找同一关键字对应的所有值
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
轉(zhuǎn)載:http://blog.csdn.net/stpeace/article/details/44984639
我個(gè)人感覺哈, map的應(yīng)用場(chǎng)景比multimap更多, 不過, 我們還是來學(xué)一下multimap。 我們知道, multimap中, 一個(gè)關(guān)鍵字可能對(duì)應(yīng)多個(gè)不同的值, 怎么獲取呢?我們來看程序, 接招(介紹三種方法):
? ? ? 結(jié)果為:
[cpp]?view plaincopy
#pragma?warning(disable?:?4786)?? #include?<map>?? #include?<string>?? #include?<iostream>?? using?namespace?std;?? ?? int?main()?? {?? ????multimap<int,?string>?mp;?? ????mp.insert(pair<int,?string>(3,?"hehe"));?? ????mp.insert(pair<int,?string>(4,?"haha"));?? ????mp.insert(pair<int,?string>(2,?"error"));?? ????mp.insert(pair<int,?string>(3,?"good"));?? ????mp.insert(pair<int,?string>(3,?"ok"));?? ????mp.insert(pair<int,?string>(3,?"hehe"));?? ?? ????multimap<int,?string>::iterator?it;?? ????for(it?=?mp.begin();?it?!=?mp.end();?it++)?? ????{?? ????????cout?<<?it->first?<<?"--->";?? ????????cout?<<?it->second?<<?endl;?? ????}?? ?? ?????? ????int?n?=?mp.count(3);??? ????cout?<<?n?<<?endl;?? ?? ????int?i?=?0;?? ????it?=?mp.find(3);??? ????for(i?=?0;?i?<?n;?i++)?? ????{?? ????????cout?<<?it->first?<<?"--->";?? ????????cout?<<?it->second?<<?endl;?? ????????it++;??? ????}?? ?? ????cout?<<?"---------------------------"?<<?endl;?? ?? ?????? ????for(it?=?mp.lower_bound(3);?it?!=?mp.upper_bound(3);?it++)?? ????{?? ????????cout?<<?it->first?<<?"--->";?? ????????cout?<<?it->second?<<?endl;?? ????}?? ?? ????cout?<<?"---------------------------"?<<?endl;?? ?? ?????? ????pair<multimap<int,?string>::iterator,?multimap<int,?string>::iterator?>?pos;?? ????for(pos?=?mp.equal_range(3);?pos.first?!=?pos.second;?pos.first++)?? ????{?? ????????cout?<<?pos.first->first?<<?"--->";?? ????????cout?<<?pos.first->second?<<?endl;?? ????}?? ?? ????return?0;?? }??
? ? ? 結(jié)果為:
2--->error
3--->hehe
3--->good
3--->ok
3--->hehe
4--->haha
4
3--->hehe
3--->good
3--->ok
3--->hehe
---------------------------
3--->hehe
3--->good
3--->ok
3--->hehe
---------------------------
3--->hehe
3--->good
3--->ok
3--->hehe
Press any key to continue
總結(jié)
以上是生活随笔為你收集整理的STL中的multimap---顺便说说如何查找同一关键字对应的所有值的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。