Bonjour à tous !
Je suis néophyte sous C++, ainsi je suis confronté à un certains nombres de problème, probablement triviaux.
Aujourd'hui, j'ai des problèmes pour concevoir un constructeur de copie.
Voici mon code:
Pour le constructeur de copie, je pensais faire très simplement le code ci-dessus, mais celui-ci ne marche pas. Je sens que je manque toute la profondeur de l'arbre avec celui-ci ? Et imagine donc un appel récursif du type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 class arbre { public: explicit arbre( int valeur ); ~arbre(); arbre(arbre & a); [Mes méthodes : hauteur(), new_gauche( arbre_binaire * nouveau_gauche );, gauche(), droite()...] private: int valeur_; arbre * gauche; arbre * droite; arbre::arbre(arbre & a){ gauche_= a.gauche; droit_ =a.droite; valeur_= a.valeur; }
Néanmoins cela ne compile pas, problème de type pointeur/ non-pointeur, mais je ne m'en sors pas trop.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 arbre_binaire::arbre_binaire(arbre_binaire & a){ gauche_= arbre_binaire( a.gauche_); droit_ = arbre_binaire( a.droit_); valeur_= a.valeur_; ++nombre_instances_; }
Si jamais vous pouvez m'aider, je vous remercie d'avance!
Bonne journée,
Giopi
Partager