|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
关于multimap::equal_range的用法--经常遇到哦,一对多
5 ]' o: x9 ~; `9 ?
( _3 \- F: D' B7 W& U3 W* S- n来个例子,一看就懂
9 P% R9 }( u5 y; O: x+ Q
& Z- k) F- J: Y: `- l// multimap::equal_elements5 p- A7 t# f* G% O+ q2 ]+ ?
#include <iostream>
( f7 c! i' d* T& L6 Z#include <map>
; o5 j. c" q! q7 ^6 P4 F& Lusing namespace std;( P4 t9 t& G9 Y. A, i$ J7 {
int main ()
% v' @) ~: K4 Y( [( O! q+ |{
, c5 q1 E; J- X$ ^6 f4 o7 r multimap<char,int> mymm;
6 {; ^& I, `, C3 Y! A, S! D# U1 s multimap<char,int>::iterator it;& o0 j% ?7 y5 `+ l4 K. L7 z
pair<multimap<char,int>::iterator,multimap<char,int>::iterator> ret;" x. A- M2 `3 L, G) K
mymm.insert(pair<char,int>('a',10));
6 [- u9 b' X. G/ x% @) ]6 D; a mymm.insert(pair<char,int>('b',20));
* {% P) P, ?( C/ s* J3 O% k3 V$ w mymm.insert(pair<char,int>('b',30));) L; b+ G# B* Q6 z9 R/ M
mymm.insert(pair<char,int>('b',40));
2 N( M+ Z; m. c- s- x4 a" H1 { mymm.insert(pair<char,int>('c',50));
5 d' i0 [4 \* w% q* J mymm.insert(pair<char,int>('c',60));6 p, U- W" c" l! K9 a" L2 A5 m& |1 L
mymm.insert(pair<char,int>('d',60));
+ `- _3 T! }# \1 O cout << "mymm contains:\n";2 N- n6 ]) G# Z9 G2 D, s
for (char ch='a'; ch<='d'; ch++)5 [1 J$ `; m4 V
{* z7 T9 M5 x7 V- @4 L8 X
cout << ch << " =>";( p0 l K8 A$ [- R
ret = mymm.equal_range(ch);
; z$ R3 A) z$ m7 `6 B. y' e for (it=ret.first; it!=ret.second; ++it)
! e) ^% I+ y, J% ?) ? cout << " " << (*it).second;- }! T4 P1 K* k6 C# [2 {$ Q, K
cout << endl;
; B5 I, i0 R0 n6 m% K9 [0 F }
$ z( x/ ?, U( Q: Q" `! H$ c return 0;/ L8 r0 a7 s! {" w7 p
}
3 i2 a3 G; Z. l% Q- c. M) Y' t" N3 O* z9 ^1 y
mymm contains:
9 S+ B. b; z4 ^+ |; t: a# f& G8 La => 103 N& [5 V3 V% N5 `) {
b => 20 30 40
' b. @; _, n. f( n K* g6 l2 hc => 50 60
% m/ t3 {0 _# c) Td => 60: h E3 Z) v9 V- Q* p% I7 A b
# I! S0 F: t! f1 ^% f7 K5 G |
|