Veröffentlicht 22. September 201410 j Hallo, um ein Projekt übersichtlicher zu strukturieren, wollte ich einige Klassen in eine (statische) Bibliothek packen. Die Bibliothek habe ich auch erstellt. Ich benutze Visual Studio 2013 Express. Wenn ich das richtig verstanden habe, sollte es doch reichen, bei "Konfigurationseigenschaften -> Linker -> Allgemein" das zusätzliche Bibliotheksverzeichnis anzugeben, das die .lib-Datei enthält und bei "Eingabe" unter "Zusätzliche Abhängigkeiten" den Dateinamen einzutragen. Aber wie kann ich jetzt eine Klasse aus der Bibliothek verwenden (also z.B. mit "include")? Oder brauche ich dafür eine dynamische Bibliothek? Gruß PL1994
22. September 201410 j Autor Das geht nicht ("No such file or directory"). Der Header kann doch mit in der Bibliothek sein, oder? Oder muss der im aktuellen Projekt liegen?
22. September 201410 j Du musst in den Projekteinstellungen das Verzeichnis, in dem der Bibliotheksheader liegt, zu den Include-Verzeichnissen hinzufügen. Bitte nicht den Header in deinen Projektordner kopieren!
22. September 201410 j Autor Das Verzeichnis ist als Include-Verzeichnis eingestellt. Darin liegt aber nur die .lib-Datei. Muss da noch ein separater Header sein?
22. September 201410 j Zu einer statischen Bibliothek gehört (mindestens) ein Header, der die Deklaration der öffentlichen Schnittstelle enthält.
22. September 201410 j Autor Habe "gegoogelt", aber ich finde dazu einfach kein Beispiel. Kannst du mir vielleicht einen Link für ein Tutorial oder für eine Erklärung posten?
22. September 201410 j Was gibt es da zu googlen? Dieselben Header, die du brauchen würdest, um die Klassen direkt zu verwenden, brauchst du auch, wenn die Klassen in einer statischen Bibliothek stecken.
22. September 201410 j Autor Mal angenommen, ich habe eine Bibliothek mit den Klassen K1 und K2, dann muss im Include-Verzeichnis liegen: - Bibliothek.lib - K1.h - K2.h Richtig?
22. September 201410 j Wie du deine Header aufteilst ist egal, du musst nur mindestens eine haben in der die Klassen deklariert sind
24. September 201410 j Autor Nach einigem Umstrukturieren habe ich jetzt alle Klassendefinitionen in einer Headerdatei verpackt. Funktioniert. Danke euch!
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.