include Pfade zusammensetzen



  • Hallo,

    ich hab eine Menge externer HeaderFiles, die zu meinem Projekt gehören.
    Ich habe in meinem Projekt in den Optionen einen zusätzlichen externen Include-Pfad hinzugefügt:

    D:\myIncludes

    Jedes Headerfile das in diesem Ordner liegt und das ich per

    #include "hallo.txt"
    

    einbinde, wird auch gefunden.

    Jetzt gibt es in diesem Ordner aber auch eine weitere Verzeichnungsstruktur und noch mehr HeaderFiles, zBsp: D:\myIncludes\Hardware\abc.h"

    Ich hatte jetzt die Hoffnung das ich diesen Pfad nicht auch den Optionen hinzufügen muss sondern die HeaderFiles einfach so inkludieren kann:

    #include "Hardware/abc.h"
    

    Das funktioniert aber nicht. Kann man auf diese Art keine Pfade zusammensetzen ? Also aus dem "D:\myIncludes" aus den Optionen und der Angabe "Hardware/abc.h" ?

    Muss ich jeden Unterordner als extra Include Pfad in den Optionen definieren ?

    Grüße

    EDIT_ Intellisence findet diese Files aber, ich kann, wenn ich das Include angebe per Intellisence schön die Ordner vervollständigen lassen. Ih verstehe dann nur nicht wieso er das HeaderFile nicht findet am Ende.


  • Mod

    Doch, eigentlich geht das so und sollte funktionieren.



  • die pfad-angabe ist ungültig. wenn du also ausdrücklich "d:\myIncludes\Hardware\abc.h" einbinden willst, musst du auch #include "d:\myIncludes\Hardware\abc.h" schreiben.

    jetzt wird das alles natürlich nicht mehr funktionieren, wenn sich die pfade irgendwann mal ändern, an den header-dateien herumgefummelt wird, usw, und deshalb solltest du dir eine kopie der header-dateien im projektordner anlegen, auf die du dann bequem mit #include ".\ordnername\dateiname" zugreifen kannst.

    für c++-header solltest du übrigens die endung .hpp verwenden.



  • HansKlaus schrieb:

    die pfad-angabe ist ungültig. wenn du also ausdrücklich "d:\myIncludes\Hardware\abc.h" einbinden willst, musst du auch #include "d:\myIncludes\Hardware\abc.h" schreiben.

    jetzt wird das alles natürlich nicht mehr funktionieren, wenn sich die pfade irgendwann mal ändern, an den header-dateien herumgefummelt wird, usw, und deshalb solltest du dir eine kopie der header-dateien im projektordner anlegen, auf die du dann bequem mit #include ".\ordnername\dateiname" zugreifen kannst.

    für c++-header solltest du übrigens die endung .hpp verwenden.

    Das ist Quatsch. Alles.



  • scrabbl schrieb:

    EDIT_ Intellisence findet diese Files aber, ich kann, wenn ich das Include angebe per Intellisence schön die Ordner vervollständigen lassen. Ih verstehe dann nur nicht wieso er das HeaderFile nicht findet am Ende.

    Fehler: Copy&Paste


Anmelden zum Antworten