Je sais que cette question a déjà été soulevée sous différentes formes, mais c'est légèrement différent.Touches/Valeurs Fonctionnalité pour les itérateurs en C++
J'ai une classe qui contient une carte std :: map. Bien que je souhaite utiliser la carte à d'autres fins à l'intérieur de la classe, je souhaite exposer extérieurement un adaptateur d'itérateur aux seules valeurs de la carte (ie le deuxième élément de la paire std ::).
Par exemple en python que je pourrais faire quelque chose comme ceci:
def __iter__(self):
return self._dict.itervalues()
Comment puis-je le faire cela en C++, en se cachant la mise en œuvre dans la classe?
Merci,
Dan
hmm, je ne peux pas obtenir ceci à compiler, devrait-il vraiment y avoir aucun type de retour sur l'opérateur get_value()? – Dan
Vous avez raison, c'est modifié. –
Stack Overflow est tellement cool. (Je n'ai pas pu tester le code, je n'ai pas installé Boost à la maison.) –