(C++) Klassen untereinander verlinken



  • Problem:
    ich habe zwei Klassen, die sich gegenseitig kennen müssen, doch irgendwie geht das nicht,weil ich dann in beiden h-Files den include für die andere Datei machen muss...

    ->>

    // KlasseA.h
    // ??? #include "KlasseB.h" ? geht nicht !!!
    class CKlasseA
    {
    ...
    private:
    KlasseB instB;
    }

    -----------------------
    // KlasseB.h
    // ???? #include "KlasseA.h" ? geht nicht !!!
    class CKlasseB
    {
    ...
    private:
    KlasseA instA;
    }



  • Nimm einen Zeiger auf die Klassen, dann kannst Du forward deklarationen machen.

    ------------- KlassA.h -----------------
    
    class B;
    class A
    {
     B * b;
    
    }
    
    ------------- KlassB.h -----------------
    
    class A;
    class B
    {
     A * a;
    
    }
    

Anmelden zum Antworten