|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
关于multimap::equal_range的用法--经常遇到哦,一对多9 g, y7 `. }! E) D) E
5 o8 h: m _) T, h5 m _
来个例子,一看就懂
+ L$ l. B G* n5 z3 O9 y( f3 F& R1 x8 Y' {2 k- u3 @3 a' N
// multimap::equal_elements
$ e! P" @; h' g. W, Q; N3 W#include <iostream>
7 g! P+ F3 }9 L$ b( [#include <map>
0 S6 r9 I2 u& Y% q1 }0 K, {0 kusing namespace std;
( O+ H( x# s( Oint main ()4 `; O, c+ P& p4 P/ w
{$ V& y9 v1 k- M* u7 r9 z
multimap<char,int> mymm;1 W, W! }3 A& }" A/ f/ j
multimap<char,int>::iterator it;. I" q. T% ~! ^% B( G6 b( g9 z- h
pair<multimap<char,int>::iterator,multimap<char,int>::iterator> ret;
+ R% f$ z1 S* ?, Z+ L mymm.insert(pair<char,int>('a',10));
3 B: J& M* @; c6 P mymm.insert(pair<char,int>('b',20));
, @8 D% Y' m+ Y/ }( D mymm.insert(pair<char,int>('b',30));
6 [$ W4 F [. ~$ b/ W* n mymm.insert(pair<char,int>('b',40));) S; `. ?) {' L, ~- u
mymm.insert(pair<char,int>('c',50));
9 f4 C- p4 h d- n. ]9 _ mymm.insert(pair<char,int>('c',60));
& J! H" q$ o3 b# t mymm.insert(pair<char,int>('d',60));: _+ |5 Y" d1 O0 b
cout << "mymm contains:\n";% J, E2 o4 ]; ]
for (char ch='a'; ch<='d'; ch++)
" S0 E- d k$ m5 J; I% \5 X6 U {
/ I6 j: K2 B, }& n% f# n( q cout << ch << " =>";
9 M* n& l; [2 ?1 p' P0 d& h' R ret = mymm.equal_range(ch);
2 v# s ?5 w3 E9 ~ for (it=ret.first; it!=ret.second; ++it)
1 \4 w9 ~, l' O. W" E3 Q& V cout << " " << (*it).second;
% x v/ I$ I8 e cout << endl;
# _; {4 [/ N, g4 Z& Y W }
a5 Z9 c1 v# I' P& a return 0;/ O! d7 D' N' g1 K$ ^/ A6 r2 q( Y
}
3 ~3 O7 p1 M- Z( G/ E$ |7 ~% P& H9 x' ?2 U
mymm contains:
# W% ]5 ?, \4 n! ?3 ka => 10
5 U) ]/ e9 e, G( A) B/ tb => 20 30 401 {/ |# w" i1 j( M! r z
c => 50 601 v8 _3 m" {, t W% n% X
d => 60
, M, y% V7 r3 T- P
1 ~2 a7 |. L e! b/ q9 ~" \0 j2 P |
|