Ich habe die folgende Ordnerstruktur in einem 2D-Terrarien/Minecraft Stil Spiel:C++ müssen Header enthalten viele Verzeichnisse bis
src/
- Backend/
- - Vector.hpp
- World/
- - Elements/
- - - Mobs/
- - - - BaseMob.cpp
Wie Sie sich vorstellen würde, gibt es viel mehr Quelldateien in jedem Verzeichnis. Inside BaseMob.cpp
Ich muss auf src/Backend/Vector.hpp
zugreifen. Gibt es eine bessere Möglichkeit, #include "../../../Backend/Vector.hpp"
(dh #include "/Backend/Vector.hpp"
) zu schreiben oder die Dateien in meinem Quellordner besser zu organisieren?
Hier einige weitere Informationen über den tatsächlichen Inhalt in den Quellordner (die meisten .cpp
Dateien ausgeschlossen sind):
Backend/ # Anything specific to a particular platform
- Vector.hpp
- Graphics.hpp
World/ # Anything about the whole game's world
- Elements/
- - Mobs/
- - - BaseMob.hpp # Polymorphic base class
- - - MobHandler.hpp # Manages all mobs in world
- - - PlayerMob.hpp
- - - WaterMob.hpp
- - Block.hpp # Defines all possible blocks
- - Inventory.hpp
- - Furnace.hpp
- World.hpp
- WorldRenderer.hpp # Makes calls to Backend/graphics.hpp
main.cpp
Sie könnten ein Makefile verwenden oder Ihren Systempfad ändern. –
Organisieren Sie die Dateien auf die logischste Art und befolgen Sie dann eine konsistente Regel, um auf sie zu verweisen. Zum Beispiel empfiehlt Google IIRC absolute Pfade statt relative. Macht Sinn, wenn Sie Dateien viel bewegen, bevorzuge ich eine Balance, kann eine Ebene nach oben/unten relativ zum Rest absolut sein ... – Nim
Ich würde wahrscheinlich '#include" Backend/Vector.hpp "' aber es hängt von der Lage. – drescherjm