|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
关于multimap::equal_range的用法--经常遇到哦,一对多
) ?( I. [- ]- e' n' C0 o# ]/ I$ e7 }- M9 u8 P4 `4 W9 W- {
来个例子,一看就懂
: _5 P& i3 X {7 f
0 i8 n& N, L7 S& W" T+ F2 f: i# [// multimap::equal_elements
. y6 ^, I: F) }, Q) F4 l/ D9 c#include <iostream>: V; m, w* ~3 S0 n" ~! Q
#include <map>
, X+ ?$ T2 B6 F3 t; Gusing namespace std;
" u' K& Q7 [$ K5 eint main (): h9 U2 ]3 `9 W; Z5 i6 F+ h% a
{
1 x5 w- M( f2 H1 x2 J l' c multimap<char,int> mymm;
6 p+ u$ a$ d7 M( L0 e# n2 z multimap<char,int>::iterator it;
/ U2 Z8 z; [: s& \ r! m; f pair<multimap<char,int>::iterator,multimap<char,int>::iterator> ret;
) Y) q: l% t3 b- V mymm.insert(pair<char,int>('a',10));
5 I! r# e/ L% k. _3 O; y& h0 T mymm.insert(pair<char,int>('b',20));2 ?& A$ p& h4 O
mymm.insert(pair<char,int>('b',30));0 Z3 O1 p: f D! |! B6 a) j0 A4 j% B: H
mymm.insert(pair<char,int>('b',40));
/ z) [8 i5 o. r% c mymm.insert(pair<char,int>('c',50));! W& x% |8 w' O F# U
mymm.insert(pair<char,int>('c',60));$ ~- T! y" [/ \- ?
mymm.insert(pair<char,int>('d',60));0 D$ n7 l d! W' D5 j
cout << "mymm contains:\n";
{" ?) \6 o/ X _9 v6 v for (char ch='a'; ch<='d'; ch++)
* j& F' A4 u4 j* \ W0 D {; m$ T5 t# W& W1 C7 `* ]
cout << ch << " =>";
8 @5 P# z! a* c- L ret = mymm.equal_range(ch);
; W+ `: t+ R6 E( r& ] for (it=ret.first; it!=ret.second; ++it)
0 R- G( g7 [: D! e' |1 ^2 f( T( Y cout << " " << (*it).second;' Z3 T$ X) J g- }7 s/ k: O& G
cout << endl;+ P$ e" _8 W5 u5 ~6 s
}; J8 b5 ~4 v# h, f
return 0;
! ^" t, ~0 V R* o$ c0 o) h}
$ a: s( G+ ?, Z" _. a2 k
% S( |% Z* X* l G! h/ E9 Rmymm contains:+ n- n- |4 \8 M/ c7 l# A7 ^$ ?
a => 10
6 q+ r( D$ ]4 Y3 h. tb => 20 30 40
4 _. q( }3 W6 P4 O s1 C+ ic => 50 60
; D& j& L! g' hd => 60
# j6 ^2 `# A- R" a) x( W7 F, i2 N& x/ H
|
|