Klassen kennen sich nicht



  • Hi,

    ich hab zwei Klassen die jeweils einen Zeiger haben, der auf eine Instanz der anderen Klasse zeigt.

    kleines Beispiel:

    class Klasse1
    {
      Klasse2* p;
    };
    
    class Klasse2
    {
      Klasse1* p;
    };
    

    Jede Klasse hat einen eigenen Header.
    Das Problem ist, dass ich #inludieren kann wie ich will, eine der beiden Klassen kann nie deklariert werden weil die andere nicht noch nicht deklariert wurde weil diese ja selbst wissen muss wie erstere aufgebaut ist...ihr versteht was ich meine 🙂

    Ich hab dann mal folgendes Versucht:

    extern class CKlassenname;
    

    Dadurch lässt es sich zwar kompilieren, es gibt aber eine Warnung:

    warning C4091: 'extern ' : ignored on left of 'class CComputerGegner' when no variable is declared
    

    Wie löst man dieses Problem richtig?



  • solange du nur mit pointern auf die jeweilige klasse arbeitest sollte es eigentlich kein probleme geben. poste besser ins c++ forum oder lass dich dahin verschieben 😃



  • class Klasse2;
    
    class Klasse1
    {
      Klasse2* p;
    };
    class Klasse2
    {
      Klasse1* p;
    };
    

    grüsse



  • Ich muss sagen C++ hat ein paar seltsame Aspekte, aber jetzt gehts immerhin.

    Danke 🙂


Anmelden zum Antworten