2017-02-08 2 views
0

supposons que j'ai cette multimapmagasin un groupe d'éléments forment un multimap à un autre multimap

std::multimap<char,int> mymm; 

mymm.insert (std::make_pair('x',10)); 
mymm.insert (std::make_pair('y',20)); 
mymm.insert (std::make_pair('z',30)); 
mymm.insert (std::make_pair('z',40)); 

Ensuite, je veux trouver tout élément qui a une clé spécifique « z » dans mymm à stocker dans sur un autre multimap std::multimap<int,int> mymm2; Ainsi, l'élément intérieur mymm2 serait:

keys values 
z 30 
z 40 

comment je peux faire une telle chose.

Merci à l'avance

Répondre

2

Eh bien, the documentation a tout ce qu'il faut:..

// Retrieve the range of values with key 'z' 
auto r = mymm.equal_range('z'); 

// Construct the new multimap from that range 
std::multimap<char,int> mymm2{r.first, r.second}; 
+0

J'ai passé beaucoup de temps à la recherche de cette documentation :(Merci un @quentin beaucoup – emadalamoudi

+0

@emadalamoudi s'y accrocher alors - la fonction de recherche est un peu cassée, mais le contenu est extrêmement utile. – Quentin