Wie das mit den Headern und mehreren Quelltexten geht (war: Nekromantie eines 8 Jahre alten Threads)



  • ich habe das Problem, dass, wenn ich die .cpp Dateien nicht einbinde, wird mir beim Objekt-Aufruf der Name des Objekts unterstrichen wie ein Rechtschreibfehler und mir wird angezeigt, das ein unvollständiger Datentyp nicht erlaubt ist (ich will eine Klasse die in der .h datei deklariert und in der .cpp Datei definiert ist einfügen) die Klasse ist aber vollständig und wenn ich die .cpp Datei in der main.cpp einbinde, dann Kompiliere, dann die Methoden der Klasse auskommentier und wieder Kompiliere funktioniert es auch, aber das kann es doch nicht sein oder?!?



  • ich habe das Problem, dass, wenn ich die .cpp Dateien nicht einbinde, wird mir beim Objekt-Aufruf der Name des Objekts unterstrichen wie ein Rechtschreibfehler und mir wird angezeigt, das ein unvollständiger Datentyp nicht erlaubt ist (ich will eine Klasse die in der .h datei deklariert und in der .cpp Datei definiert ist einfügen) die Klasse ist aber vollständig und wenn ich die .cpp Datei in der main.cpp einbinde, dann Kompiliere, dann die Methoden der Klasse auskommentier und wieder Kompiliere funktioniert es auch, aber das kann es doch nicht sein oder?!?



  • Woher soll der Compiler denn Wissen, dass die Klasse in der cpp Datei ist wenn du sie nicht einbindest?
    Du musst zwei Objektdateien von beiden .cpp Dateien erzeugen und diese dann linken.



  • Warum hast du den alten Beitrag nicht ruhen gelassen? 🙄

    Hast du denn deinem Compiler und Linker denn mitgeteilt das du in deinem Projekt mehrere Quelldateien übersetzen und einbinden willst? 😕 Wenn du ihnen nur eine Datei angibst, nimmt dein Compiler an du willst nur eine Datei übersetzen. Das willst du aber nicht => du hast mehrere Dateien. Sag deinem Compiler und Linker das und es läuft. 👍

    Welche IDE oder welchen Compiler und welchen Editor nutzt du für C++.


Anmelden zum Antworten