Я почти уверен, что уже знаю ответ на этот вопрос, но попытаться стоит.
Итак, допустим, у меня есть список типов:
Содержит несколько объектов:
Код: Выделить всё
struct foo{};
struct bar{};
struct quux{};
using objects = typelist;
Теперь у меня есть шаблонный класс (
), который может принимать любой из этих объектов. Но из-за размера базы кода и времени компиляции я хочу иметь реализацию моего шаблонного метода в файле cpp.
Итак, в нижней части baz.cpp у меня есть :
Код: Выделить всё
template class baz;
template class baz;
template class baz;
Проблема в том, что у меня много классов, подобных baz, и список объектов, с которыми они работают, тоже постоянно меняется. Итак... могу ли я в любом случае сохранить свой единственный список типов объектов и использовать его в файле cpp каждого baz-подобного объекта для специализации? Затем все, что мне нужно сделать, это обновить свой список типов, когда у меня появится новый объект, и все объектные файлы будут перестроены.
Подробнее здесь:
https://stackoverflow.com/questions/324 ... a-typelist