У меня есть много шаблонных классов, экземпляры которых необходимо явно создать с использованием одного и того же набора параметров, например
Код: Выделить всё
template class A;
template class A;
template class B;
template class B;
template class C;
template class C;
...
Не обращая внимания на количество шаблонов, если я хочу добавить дополнительный экземпляр для всех из них, мне придется обратиться к каждому из них и добавить его. Мне интересно, есть ли способ собрать все типы, экземпляры которых я хочу создать, чтобы я мог писать, например,
Код: Выделить всё
template class Instantiate;
template class Instantiate;
template class Instantiate;
...
Тогда всякий раз, когда я хочу изменить параметры, с которыми хочу создать экземпляр, мне нужно только изменить определение Instantiate. Я попробовал (аналогично этому ответу)
Код: Выделить всё
template
class Instantiate
{
Inner a;
Inner b;
};
, но это не работает. В отличие от связанного ответа, я не могу ничего предположить о том, какие методы реализованы в a, b. Я тоже попробовал
Код: Выделить всё
template
class Instantiate
{
template class Inner;
template class Inner;
};
, что тоже не работает.
Подробнее здесь:
https://stackoverflow.com/questions/798 ... h-the-same