Problème de référence croisée
Bonjour,
Je travaille sur 3 classes.
Si on schématise, on aurait les classes A, B et C.
La classe A va créer des objets B.
La classe A va créer des objets C.
La classe B a besoin d'accéder à la classe A.
La classe C a besoin d'accéder à la classe A.
Jusque là, ca va. J'obtiens ceci :
Classe A.h :
Code:
1 2 3 4 5 6 7 8
| class B;
class C;
class A:
{
public:
A();
} |
Classe A.cpp :
Code:
1 2 3
| #include "A.h"
#include "B.h"
#include "C.h" |
---------------------------------------------------------------
Classe B.h :
Code:
1 2 3 4 5 6 7
| #include "A.h"
class B:
{
public:
B();
} |
Classe B.cpp :
---------------------------------------------------------------
Classe C.h :
Code:
1 2 3 4 5 6 7
| #include "A.h"
class C:
{
public:
C();
} |
Classe C.cpp :
Toutefois, maintenant, j'aurais besoin que mes objets <B> puissent accéder aux objets <C> instantiés par ma classe <A>.
Exemple : objetB->createurObjetA->objetC->...
Je ne comprends pas comment faire :(
Si j'essaie de faire comme indiqué ci-dessus, mon compilateur me retourne une erreur du type :
"Invalid use of undefined type 'struct <C>'"
Auirez-vous une idée, s'il vous plait ?
Merci d'avance pour votre aide ;)