У меня есть две статические библиотеки для классов B и C, происходящие из одного базового класса A. Я создал фабрику (которая также является статической библиотекой) для B и C, которая включает следующий static метод:
A* Get(int i) {
if (1) return new B();
if (2) return new C();
return NULL;
}
Обе библиотеки B и C связаны с библиотекой фабрики, а библиотека C зависит от другой библиотеки D. Проблема заключается в том, что когда я связываюсь с фабрикой для создания экземпляраТолько B и B (я вызываю Get (1) в моем коде) я получаю ошибки компоновщика относительно отсутствующей библиотеки D.
Есть ли способ для компоновщика избежать второго "if" в "Get"Приведенный выше метод и тем самым избавляет вас от необходимости связывать библиотеки C и D?
Спасибо!