2015-04-25 2 views
1

Я не знаю правильного термина для этого, так простите мое сообщение. Я хотел, чтобы мое рабочее пространство было чистое и организовано, поэтому я подумал, что, возможно, это так, что я должен реорганизовать файловую структуру библиотеки, которую я писал для своей игры. У меня есть файл структуру, которая выглядит следующим образом:Как включить цепочку в C++?

MyLibrary/include 
MyLibrary/src 

Проблема с этим состоит в том, что на клиентской части, они обязывают, чтобы сделать что-то вроде этого:

#include "MyLibrary/include/myfile.hpp" 

Я хотел, чтобы это выглядело как это:

#include "MyLibrary/myfile.hpp" 

Как я могу достичь этого с помощью C++?

Спасибо!

ответ

5

Если вы хотите, чтобы это выглядело как #include "MyLibrary/myfile.hpp", сделать свой каталог включает выглядеть следующим образом:

MyLibrary/include/MyLibrary/*.hpp 

Тогда в любом сборки системы вы используете, добавьте MyLibrary/include в заголовочном пути.

Например, для GCC вы можете добавить -I local/path/to/include к вашему вызову. Посмотрите документацию для вашей конкретной системы сборки для получения инструкций.

+0

Fantastic! Оно работает! Ура! –

1

Включить файлы можно найти в каталоге каталога include (список каталогов). Например, с помощью GCC вы можете использовать

#include "myfile.hpp" 

и компиляции, добавив опцию -I

gcc -I MyLibrary/include ...other options... 

Обратите внимание, что вы можете предоставить вариант -I несколько раз.

Там нет никакого способа, в компиляторах я знаю, однако «пропустить» части пути ... то есть сделать

MyLibrary/myfile.hpp 

для разрешения на

MyLibrary/include/myfile.hpp 
Смежные вопросы