Problème avec mes #include

Résolu
Makazasky Messages postés 6 Date d'inscription dimanche 25 janvier 2009 Statut Membre Dernière intervention 26 janvier 2009 - 25 janv. 2009 à 06:23
Makazasky Messages postés 6 Date d'inscription dimanche 25 janvier 2009 Statut Membre Dernière intervention 26 janvier 2009 - 25 janv. 2009 à 17:39
Salut, j'ai plusieurs classes qui ont besoin l'une de l'autre, cependant j'y arrive pas, Chaque classe a sont en-tête et chaque en-tête

voici mon projet : http://rapidshare.com/files/189034213/TestGFF.zip.html

Tout fonctionne, cependant je suis bloqué... ma classe CGFFField à besoin de la classe CGFFList mais lorsque j'insère l'en-tête, ça crer 200+ erreurs.

2 réponses

cs_Chouchou182 Messages postés 252 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 25 avril 2011 1
25 janv. 2009 à 09:45
Bonjour,

Il te faut déclarer les classes avant de les définir.

CGFFField a un champ de type CGFFStruct et
CGFFStruct a un champ de type CGFFField.

Aussi, pour pouvoir définir l'une, il faut que l'autre classe soit définie, et réciproquement ; ce qui n'est pas possible.
Il s'agit donc d'indiquer au compilateur qu'une classe existe, sans pour autant la définir tout de suite.

Avant la définition de CGFFField, tu peux écrire :

class CGFFStruct ;

Et de manière similaire, avant la définition de CGFFStruct, tu peux écrire:

class CGFFField ;

Pour finir de compiler, il te faudra sûrement déclarer de la même manière CGFFList. Tu peux éventuellement grouper ces déclarations dans un fichier d'en-tête créé pour l'occasion.

Tu as également, il me semble, omis d'inclure <cstring> lorsque tu fais appel à strcomp, strlen, etc.

Bonne Prog,
3
Makazasky Messages postés 6 Date d'inscription dimanche 25 janvier 2009 Statut Membre Dernière intervention 26 janvier 2009
25 janv. 2009 à 17:39
merci!
0