Problem mit includes



  • Hallo zusammen,

    ich habe zwei Klassen, die sich gegenseitig includen
    und Referenzen auf die andere Klasse besitzen sollen.

    #include "homebankingaccount.h"
    
    class HBCI_API{
    
    	// blablabal
    
    	HomebankingAccount* account;
    }
    

    ----------------------------------------------------

    #include "HBCI_API.h"
    
    class HomeBankingAccount{
    
    	// blablabal
    
    	HBCI_API* api;
    }
    

    Leider erhalte ich beim kompillieren folgende Fehlermeldung:

    homebankingaccount.h:86: error: Syntaxfehler before `*' token ,

    bezogen auf die Zeile mit dem api-pointer, so als ob ein include
    fehlen würde. Wenn ich die Referenz im Konstruktor anlege ist dies
    kein Problem. Nur als Attribut ist dies leider nicht möglich.

    Woran kann das liegen? Kommt das durch den Kreis-include zustande?
    Und weiss jemand, wie ich das Problem lösen kann?

    <edit=kingruedi> sfds </edit>



  • Benutz doch einfach Forward-Deklarationen um das Problem des gegenseitigen inkludieren zu vermeiden.

    class hbci_api;
    
    class homebankingaccount {
      hbci_api *moep;
    };
    


  • Dieser Thread wurde von Moderator/in kingruedi aus dem Forum Linux/Unix in das Forum C++ verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


Anmelden zum Antworten