|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
关于multimap::equal_range的用法--经常遇到哦,一对多! i0 M# o/ S( l
. A) @: y% m9 X# B& ]) x D
来个例子,一看就懂- a: N2 D l; D, q$ W4 p
1 i/ q& m" O/ ~; E% H. u2 K// multimap::equal_elements7 ]- y8 ]: h6 V+ o R4 f
#include <iostream>
# M) L" x( ^3 s) V# L4 z#include <map>* J/ e; {' T/ y9 L0 A2 v. D
using namespace std;
$ b. O, U$ L, @+ V0 vint main ()! t7 o8 u* F) m$ e: D
{& d Y1 i0 C6 V* T+ i% C+ I; U
multimap<char,int> mymm;
. ] y& ]8 f9 |/ s multimap<char,int>::iterator it;# A1 z$ ?' @- S- w7 l+ @2 p
pair<multimap<char,int>::iterator,multimap<char,int>::iterator> ret;
, T2 U4 D& {( T$ o mymm.insert(pair<char,int>('a',10));
; ?% V7 \4 I, l* I0 [" _2 ~- _9 j4 U mymm.insert(pair<char,int>('b',20));
8 a# W+ _8 ?! g# H' d9 ~8 f mymm.insert(pair<char,int>('b',30));% O- g4 |6 G4 s
mymm.insert(pair<char,int>('b',40));# v) U" X) w- h
mymm.insert(pair<char,int>('c',50));
7 `6 K; {, \$ `/ z) ~ mymm.insert(pair<char,int>('c',60));
* c, O1 Y6 F: m mymm.insert(pair<char,int>('d',60));
) o- ^6 G% ]8 e cout << "mymm contains:\n";! B) [' I+ c2 i* t0 x
for (char ch='a'; ch<='d'; ch++)
2 t# N7 P9 `0 l2 }4 u; W {) N6 t1 z+ R: M
cout << ch << " =>";
% g6 X. o8 A% D ret = mymm.equal_range(ch);( ] \9 g- p* w" ~
for (it=ret.first; it!=ret.second; ++it), |* @; I8 `" U5 }; L
cout << " " << (*it).second;
, U! S9 V- f/ x5 }9 j8 ~# x cout << endl;: x- Z: y( W) Z
}4 p* o# I6 t$ m
return 0;) x5 h9 P- M0 Y) U7 f# B& K
}: n- I7 s2 M. |4 N& {
( e# e1 D. i& C! w$ \mymm contains:9 W" j- c2 ?5 K& |3 K, ?$ |5 k
a => 10+ q' H# s7 J* E ` Y8 x# \
b => 20 30 40
( `7 Y1 P) f+ N( p6 Wc => 50 60; r5 m ~2 t1 V5 B% y
d => 600 P7 h& T* T) }. F
$ b) T2 u* a- b; c) h6 {
|
|