Comment constuire un arbre ?..

vincemail Messages postés 79 Date d'inscription mardi 29 juillet 2003 Statut Membre Dernière intervention 8 décembre 2006 - 8 mai 2006 à 14:54
vincemail Messages postés 79 Date d'inscription mardi 29 juillet 2003 Statut Membre Dernière intervention 8 décembre 2006 - 8 mai 2006 à 16:57
Bonjour à tous, je voudrais créer un arbre binaire en langage objet, j'ai donc écrit la classe :

Arbre{
private :
Contenu contenu;
Arbre filsGauche;
ArbrefilsDroit;

public :
Arbre();

Arbre DonnerFilsGauche();
Arbre DonnerFilsDroit();
Contenu DonnerContenu();
};

Le problème est que j'ai une erreur de type avec DevC++ à la ligne "Arbre filsGauche;". Je pense que cela vient du fait que la classe Arbre n'est pas encore définie lorsqu'on arrive à cette ligne, on ne peut donc pas mettre d'objet-membre du meme type dans une classe... Comment faire alors pour créer cette arbre ? J'ai vu qu'en utilisant les structures c'est possible, mais cela ne permet pas de définir de méthodes... C'est pour ca que je voudrais faire ca en objet. Merci beaucoup si vous avez une réponse.

Vincent

4 réponses

nightlord666 Messages postés 746 Date d'inscription vendredi 17 juin 2005 Statut Membre Dernière intervention 23 mai 2007 10
8 mai 2006 à 15:00
A la déclaration de ta classe, avant la première accolade, met class Arbre au lieu de Arbre tout seul.

Si c'est pas ça, met avant la déclaration de ta classe :

class Arbre;
0
vincemail Messages postés 79 Date d'inscription mardi 29 juillet 2003 Statut Membre Dernière intervention 8 décembre 2006
8 mai 2006 à 15:05
Ah oui excuse-moi, c'était "class Arbre{" et non "Arbre{". J'ai essayé de mettre "class Arbre;" avant la déclaration de classe mais ca ne marche toujours pas, ca me rend la même erreur : "field filsGauche has incomplete type"...
0
cs_laurent1024 Messages postés 987 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 30 août 2012 25
8 mai 2006 à 15:47
Il y a une autre erreur dans ton code tu as ArbrefilsDroit; au lieu de Arbre filsDroit;
Je pense pas ce ca va resoudre ton problème mais bon.
++
0
vincemail Messages postés 79 Date d'inscription mardi 29 juillet 2003 Statut Membre Dernière intervention 8 décembre 2006
8 mai 2006 à 16:57
Exact :) J'ai pas fais un copié collé de mon code, j'ai réécris une version simplifiée, il n'y a pas cette erreur dans mon code. Apparemment lorsqu'on met un pointeur "Arbre* filsGauche" au lieu de "Arbre filsGauche" ca fonctionne donc ca me permet de contourner le problème mais c'est tout de meme étrange cette erreur...
0
Rejoignez-nous