Задачка такая вот.
Есть несколько очень массивных модулей в проекте. 4 модуля на паскале (delphi) весят 5МБ. 4 C++ заголовка к ним весят 3МБ. Это результат импортирования библиотек типов COM. Хочу избавиться от них - вынести из проекта. Собственно, мне не нужно только часть функционала, но резать библиотеку не хочу.
Я выделяю эти модули в отдельный проект. На выходе: dll, lib, и те же 4 огромных заголовка.
Пишу для этой библиотеки оболочку, которая обобщает нужный мне функционал. Если я вынесу эту оболочку в отдельную dll, то в результате мне все равно надо будет подключать 4 заголовка от первой dll и заголовки от новой. Т.е. жалемого результата нет.
Сколько не делай оболочек, а заголовки, получается, нужно тянуть от всех.
Попробуем на примерах.
1. dll1.h
class C1
{
};
2. dll2.h
#include "dll1.h"
class C2
{
private:
C1 *var;
public:
void useVar(void);
}
3. main.cpp
#include "dll2.h"
C2 myVar;
Здесь косвенно по прежнему используются заголовки dll1.
Таки есть идеи, как от этого избавиться?