У меня есть проект Visual Studio 2015 C ++, в котором есть ссылки на несколько сторонних бесплатных библиотек.
Чтобы сократить время компиляции (в настоящее время 5–90 секунд),
я хочу разбить проект на множество более мелких проектов.
В процессе подготовки я уже создал фильтры в обозревателе решений.
Фильтры показывают структуру верхнего уровня моего проекта, разделенную на уровни сильный>: -
Tier 1 - my core library, no reference to outside, rarely change
Tier 2a - my custom encapsulator for external library "A"
Tier 2b - my custom encapsulator for external library "B"
...
note: all Tier2 #include Tier1 , rarely change
Tier 3 - business logic that rarely change, #include Tier1&2
Tier 4 - business logic that often change , #include Tier1&2&3
Вопрос: как легко разделить этот проект на несколько?
например почти легко, просто нажмите на фильтр и выберите «извлечено в новый проект»
Я прочитал несколько источников - их объяснение подходит для создания с нуля, а не для существующего проекта.
Также кажется, что мне нужно добавить несколько строк для некоторых отдельных файлов.
#if defined DLL_EXPORT
#define DECLDIR __declspec(dllexport)
#else
#define DECLDIR __declspec(dllimport)
#endif
У меня> 100 файлов, так что это не очень практично.
Я поискал в Google "разделить проект Visual Studio c ++", но не нашел много результатов.
Связанный вопрос: не объяснять "как"
Как разделить решение Visual Studio?
Внешняя ссылка: во всех есть строка #define DECLDIR __declspec (dllexport)
http://www.codeguru.com/cpp/cpp/cpp_mfc/tutorials/article.php/c9855/DLL-Tutorial-For-Beginners.htm
https://manski.net/2011/11/creating-a-dll-project/