|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
关于multimap::equal_range的用法--经常遇到哦,一对多5 N+ V7 f3 M) N/ C
3 W9 L6 k* F# Y, _/ P8 R' @来个例子,一看就懂
- K9 Q1 ~; w6 c! i4 p. v, S9 N9 I, }% S" O; l/ Z
// multimap::equal_elements% p1 c! Z( L/ n* [% O% }7 P
#include <iostream>
% g. p$ z. l4 A$ K( K#include <map>
7 l2 J( N% D" m6 musing namespace std;7 F6 W8 f! T) o: E+ X1 T$ f
int main ()7 A }9 A2 G; \% T
{
" [) ^8 E6 k& ], H# @2 H1 e: t% S multimap<char,int> mymm;9 Y9 ~6 Q! X+ E* b5 a" d, a2 q5 E a
multimap<char,int>::iterator it;
0 b3 Q# a% r e9 G$ f; r7 q pair<multimap<char,int>::iterator,multimap<char,int>::iterator> ret;
6 \4 c5 ?2 c- E4 x5 q2 n+ A: k+ T3 d mymm.insert(pair<char,int>('a',10));! B" r& r' `* l5 R9 M4 y2 S
mymm.insert(pair<char,int>('b',20));% F; b$ b* K& d/ o; F1 o
mymm.insert(pair<char,int>('b',30));
2 o# J; A: U2 d) o. H9 \ mymm.insert(pair<char,int>('b',40));
8 h Z5 ~3 X1 I* `2 Q mymm.insert(pair<char,int>('c',50));, [- A4 N3 R' P& K6 x' R
mymm.insert(pair<char,int>('c',60));
2 D. U7 a! e) Z4 g5 U9 J mymm.insert(pair<char,int>('d',60));+ @; H0 X/ A2 O; q }$ [) }, S# I) Y
cout << "mymm contains:\n";
# s7 \& F! A! t0 g8 A& T for (char ch='a'; ch<='d'; ch++)
/ Y/ D. Q$ a; Y* L" V {! R( t; y/ p+ r; j
cout << ch << " =>";
4 p n2 k. N; j7 N: t I$ @* T ret = mymm.equal_range(ch);# C2 A8 X z: \
for (it=ret.first; it!=ret.second; ++it)
s( o- o3 A, ?1 s$ a) @ cout << " " << (*it).second;
, G Q/ h ^; V% S cout << endl;2 ]+ B! W P4 u) K* |
}& G# j8 c1 R8 F
return 0;
8 {( `/ s& w6 c! U/ f! D3 |}
% z) e' _2 e M0 |' ?- }' y0 \
. d! i4 A; v' M) l7 F9 E' Wmymm contains:' R# X( w8 V6 M* m' x2 {
a => 10
$ M. w2 k1 l9 ?& Tb => 20 30 40
6 w- L) x* U ?, Yc => 50 60
/ o* H2 d7 T% Z2 a s$ Ad => 60
& H2 d. `' E5 |+ H' \
i0 z! Y% X- s# X! r8 Q |
|