include probleme



  • Hallo ich habe mal eine generelle frage,
    und zwar habe ich eine Klasse A mit einer Instanz bzw. Referenz zu klasse B.
    Dasselbe möchte ich für Klasse B machen. leider funktioniert das überhaupt nicht aber wieso?

    #pragma once
    #include "B.h"
    
    ref class A
    {
       private: 
        B^ refB;
    
       public:
       A(B^ refClass){
         refB = refClass;
       }
    };
    

    Bis hierhin funktioniert alles wünderbar, aber sobalt ich versuche in Klasse B, die Klasse A zu includieren geht garnichts mehr.??

    Dasselbe möchte ich für Klasse B machen. leider funktioniert das überhaupt nicht aber wieso?

    #pragma once
    #include "A.h" //<---- hier gibt es schon Probleme!!
    
    ref class B
    {
       private: 
        A^ refA;
    
       public:
       B(A^ refClass){
         refA = refClass;
       }
    };
    


  • Gib doch mal die Fehlermeldung...
    Das sieht so doch eigentlich brauchbar aus.

    Gruß, Doug_HH



  • Du kannst nicht A in B und B in A includieren!

    Entscheide dich für eine Variante und übergebe die Daten dann per property hin und her...



  • hey wie soll ich das per property übergeben?



  • Das funktioniert schon, du musst nur die Klassen einander bekannt machen.

    ref class B; // !!!
    
    ref class A
    {
       private:
        B^ refB;
    
       public:
       A(B^ refClass){
         refB = refClass;
       }
    };
    
    ref class B
    {
       private:
        A^ refA;
    
       public:
       B(A^ refClass){
         refA = refClass;
       }
    };
    


  • Btw: Das Schlagwort heisst Forward deklaration falls Du Dir weitere Informationen im Netz zusammensuchen willst.


Anmelden zum Antworten