Автоматическое явное создание экземпляра шаблонаC++

Программы на C++. Форум разработчиков
Anonymous
Автоматическое явное создание экземпляра шаблона

Сообщение Anonymous »


Я определяю несколько типов в своей библиотеке:

ТипA ТипB ТипC ... Пользователям библиотеки необходимо писать функции, шаблонизированные следующими типами:

шаблон void user_function( константа Т& т); Предполагается, что эти функции работают только с типами, перечисленными выше.

Я хотел бы, чтобы пользователь мог писать реализации этих функций в файле .cpp без необходимости явного создания экземпляров всех типов. В частности, потому, что в будущем я могу добавить новые типы.

Вот чего мне хотелось бы избежать:

template void user_function(const TypeA&); шаблон void user_function(const TypeB&); шаблон void user_function(const TypeC&); шаблон void user_function(const TypeD&); ... И лучше иметь что-то вроде:

для типа во всех типах шаблон void user_function(const Type&); с AllTypes, определенными в моей библиотеке.

Есть ли способ добиться этого?

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