Bonsoir , j'ai un problème pour créer un tableau d'objets d'une autre classe dans une classe . Je pense que ça vient des forward declaration mais c'est bizarre , je m'explique :
J'ai trois classes : A , B et C
A.cpp
A.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 #include A.h #include B.h #include C.h
B.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 class B; class C;
B.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 #include B.h #include C.h
C.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 #include A.h class C;
C.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2#include C.h
J'ai besoin de connaitre ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 #include A.h #include B.h
-) les classes B et C dans A.h
-) les classes A et C dans B.h
-) la classe B dans C.h
Pour en revenir au début de mon message , j'ai donc un problème lorsque je déclare dans B.h :
Alors que ceci marche parfaitement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 C tab[10]; // erreur : field 'tab' has incomplete type
Donc j'en viens à penser que ça n'a rien avoir avec les forward declaration parce qu'au final il connait quand meme ma classe si j'arrive à coder la seconde ligne mais on ne sait jamais , c'est pourquoi je m'en remet à vous
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 C* tab[10];
Merci à ceux qui prendront la peine de lire ce poste , bonne fin de soirée !
Partager