Есть ли способ явно создать экземпляры многих классов шаблонов с одним и тем же набором параметров?C++

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

Сообщение Anonymous »

У меня есть много шаблонных классов, экземпляры которых необходимо явно создать с использованием одного и того же набора параметров, например

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

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
Ответить

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

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

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

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

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