Basisklasse ist undefiniert
-
Hi, hi
ich habe mal wieder ein Problem
: 'A': Basisklasse ist undefiniert
Ich habe es gestern schon versucht zu lösen, habe aber nichts gefunden. Ich weiß auch gar nicht genau wo der Fehler liegen könnte ich habe mir aber mal gedacht, dass es möglicherweise an diesem komischen "include-Kreislauf" liegen könnte...// A.h //////////////// #include "B.h" class A { private: B *b; // ... }; /////////////////////// // B.h //////////////// #include "C.h" class B { private: C* c; // ... }; /////////////////////// // C.h //////////////// #include "A.h" class C : public A { private: // ... }; ///////////////////////
-
// A.h //////////////// #ifndef A_H #define A_H class B; //forward-deklaration reicht, weil ich nur nen zeiger drauf habe class A { private: B *b; // ... }; #include "B.h" //sei nett zu anwendern der "A.h" #endif /////////////////////// // B.h //////////////// #ifndef B_H #define B_H class C; class B { private: C* c; // ... }; #include "C.h" #endif /////////////////////// // C.h //////////////// #ifndef C_H #define C_H #include "A.h" class C : public A { private: // ... }; #endif ///////////////////////
-
Ups, ich habe hier ganz vergessen ifndef A_h usw. rein zuschreiben :).
Danke, es funktioniert. (*freu* Und ich verstehe das ganze sogar super gut, danke)