удаление линкера - PullRequest
       0

удаление линкера

0 голосов
/ 30 ноября 2011

У меня есть две статические библиотеки для классов 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?

Спасибо!

...