Точка настройки между библиотекамиC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Точка настройки между библиотеками

Сообщение Anonymous »

Я работаю над более крупным проектом, который включает в себя несколько библиотек, статически связанных друг с другом.
Например: у меня есть библиотека A и библиотека B. Библиотека B статически связана с библиотекой A. .
Проблема, которую я сейчас пытаюсь решить, заключается в том, что библиотека A определяет функцию шаблона DrawUI

Код: Выделить всё

template 
void DrawUI(T&) = delete;
Я хотел бы иметь возможность специализировать этот шаблон в библиотеке B. Я добился этого, специализируя функции в заголовке внутри B, но для этого требуется, чтобы заголовок был включен где-то внутри B. Я бы предпочел иметь возможность определять их где-нибудь в cpp, но не уверен, возможно ли это.
Как обычно реализуются точки настройки (например: std::hash), и я уже есть подобная вещь, работающая с нешаблонной функцией, помеченной как extern и реализованная только в cpp внутри LibraryB, поэтому я надеялся, что смогу добиться того же с этим шаблоном.
Кроме того, я хотелось бы иметь возможность проверять во время компиляции, существует ли специализация для данного типа, вызывая функцию в LibraryA, присваивая ей тип T для регистрации этих функций для последующего использования, если type_trait/concept определяет, что DrawUI существует для этого типа.

Подробнее здесь: https://stackoverflow.com/questions/787 ... -libraries
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»