Разбить его, как вы пытались сделать, разумно и достаточно просто.
Вам просто нужно указать пути включения вашего проекта. В Visual Studio щелкните правой кнопкой мыши имя проекта и выберите «Свойства». Оттуда, в древовидном элементе управления слева, разверните «C / C ++», а затем выберите «Общие» в дереве. Первый вариант справа должен быть «Дополнительные каталоги включения».
Там у вас есть несколько вариантов:
Вы можете указать конкретные каталоги включения (разделенные точкой с запятой). Например, если у вас есть папки «Окно» и «Печать», вы можете добавить:
..\Window;..\Printing
Что позволит вам легко включать файлы из окна и печатать, например:
#include <Window.h> // from src/window
#include <Printing.h> // from src/printing
Приведенный выше подход имеет некоторые недостатки, поскольку вы можете легко сталкиваться с именами из других библиотек, которые вы можете использовать, что делает включение ORDER очень важным.
Лучшим подходом (на мой взгляд) является добавление следующего в качестве пути включения:
..\
Это заставит искать родительский каталог при поиске включений. Это позволяет вам быть более многословным в ваших путях включения, например:
#include <Window/Window.h> // it's more clear where these are coming from
#include <Printing/Printing.h> // and much less likely to collide with other library
// header files