Re: Фабрика класса
От: rg45 СССР  
Дата: 13.02.13 07:52
Оценка:
Здравствуйте, AcidTheProgrammer, Вы писали:

ATP>Все доброго времени суток.

ATP>Возникла неразрешимая для меня проблема с фабрикой класса при переносе кода в статическую библиотеку.
ATP>Был набор классов которые автоматически регистрировали себя в статических конструкторах в неком списке. В exe и dll все работало. При переносе кода в библиотеку (.lib) линкер стал выкидывать классы т.к. по всей видимости он не видит внешних ссылок на классы. Как решить данную проблему без добавления явных ссылок для каждого класса (иначе теряется весь смысл)? Может быть кто-нибудь решал подобную задачу. Поиск по форумам в интернете ничего не дал.

Для этого есть старый испытанный трюк. Нужно определить вспомогательный класс, не содержащий ничего, кроме дефолтнгого конструктора. В каком-то из общих заголовков определить глобальную константу этого класса. И, самое главное, определение дефолтного конструктора (оно будет пустым) нужно выполнить в том cpp-файле, для которого необходимо обеспечить линковку.
--
Не можешь достичь желаемого — пожелай достигнутого.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.