Einbindung von Headern
-
Ich bin gerade dabei, einen Taschenrechner zu programmieren, weshalb ich mehrere Funktionen geschrieben habe. Diese habe ich alle in einer Header - Datei deklariert und in einer *.cpp - Datei definiert. Natürlich habe ich in der *.cpp - Datei den Header mit
[code]#include"taschenrechner.h"[/code]
inkludiert. Dasselbe habe ich mit der Headerdatei in dem main() - Programm gemacht, aber wenn ich versuche, dieses zu kompilieren, kommt ein Linker - Error. Dieser besagt, dass eine Funktion, die ich in main() aufrufe, nicht definiert ist. Die Fehlermeldung lautet wie folgt:
[Linker error] undefined reference to `ausdruck(char&)'
Wenn ich anstatt der Headerdatei die *.cpp - Datei inkludiere, kommt diese Fehlermeldung nicht. Dies widerspricht aber den Anweisungen in meinem Buch, mit dem ich C++ lerne. Darin wird auch eine Headerdatei erstellt, in der Funktionen lediglich deklariert werden. Dieser Header wird in einer *.cpp - Datei inkludiert, in der die Funkionen definiert werden.
Im main() - Programm wird auch lediglich der Header eingebunden.Wieso findet der Header aber die Definition nicht, obwohl ich alle Dateien in einem Ordner abgelegt habe ?
Bobby - Karle
-
du musst die .cpp datei mit linken
-
Wie kann ich diese *.cpp - Dateien, in denen man die Funktionsimplementationen findet, einzeln für sich übersetzen, sodass Objektdateien mit der Endung *.o oder *.obj entstehen ?
-
Das haengt von deinem Compiler ab. Beim gcc geht das mit der Option -c
-
Ich benutze Dev-C++, wo es keine solche Option gibt .
-
Erstelle in Dev C++ ein neues Projekt und dann einfach "Project >> Add to Project" und deine .cpp auswählen
-
Vielen Dank für die Hilfe, das Erstellen eines Projektes brachte die Lösung
. Auch die *.o - Dateien, die ich vorhin vergeblich gesucht hatte, befinden sich jetzt am richtigen Platz. Danke nochmal,
Bobby - Karle
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Compiler-Forum verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.