Itérateurs en c++ 2

Résolu
cs_Saris Messages postés 24 Date d'inscription mardi 14 novembre 2000 Statut Membre Dernière intervention 28 octobre 2006 - 28 févr. 2006 à 15:03
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 - 28 févr. 2006 à 16:10
Lorsque je crée un iterateur sur un Arbre, comment puis-je faire en sorte que cet iterator point sur la racine de mon arbre?

class Arbre
{
private :
class Noeud
{
...
}

Noeud* racine;

public :
class iterator
{
private :
Noeud* noeud;

public :
iterator ()
{
noeud = racine;
}
}
}

Erreur : racine ne peut être utilisé sans un objet.
Je pensais qu'en faisant de cette manière, une fois mon Arbre::iterator crée, celui-ci pointerais vers la racine de mon arbre.

Comment puis-je faire ?

Merci à vous et au site qui nous aide énormément !!!

3 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
28 févr. 2006 à 16:10
Dans ta classe iterateur, tu mets
friend class Arbre;
3
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
28 févr. 2006 à 15:51
Le coup du constructeur en privé ne te va pas?
0
cs_Saris Messages postés 24 Date d'inscription mardi 14 novembre 2000 Statut Membre Dernière intervention 28 octobre 2006
28 févr. 2006 à 15:58
mais alors il n'est plus accessible via une méthode de ma classe Arbre...
0
Rejoignez-nous