J'ai du mal à trouver des itérateurs pour les sous-conteneurs internes.Obtenir l'Iterator pour un conteneur STL interne?
imaginer Fondamentalement ce code simplifié:
typedef map<string, map<string, map> > double_map;
double_map dm;
.. //some code here
for(double_map::iterator it = dm.begin(); it != dm.end(); it++){
//some code here
it->first // string
it->second // <---- this is the 2nd map, how do i get its iterator so I can wrap it
//in a for loop like above?
}
Je dois pouvoir le faire sans utiliser typedefs pour chaque conteneur intérieur, est-il un moyen d'obtenir un itérateur pour le conteneur intérieur? J'ai une structure qui a 4 récipients intérieurs et je dois itérer à travers eux tous.
Désolé ce n'est pas ce que je voulais dire , Je veux dire que j'ai besoin de stocker ces itérateurs dans un inner_type :: iterator it2 = it-> second.begin() puis boucle en utilisant ces itérateurs –
Ahh c'est tout! Pourquoi n'ai-je pas pensé à mapped_type et value_type, ouais parfait c'est ce dont j'avais besoin. Merci! –
Mais quand il y a des sous-conteneurs 3 ou 4 niveaux profonds je suppose que vous devez faire double_map :: mapped_type :: mapped_type :: mapped_type hmm, bien heureusement j'ai une typedef à mi-chemin par –