У меня есть значения одного типа, но разные аргументы шаблона. И я хочу иметь некоторую переменную, которая может хранить все эти значения.
Например. У меня есть класс A
с шаблоном:
template <typename T>
class A
{
}
И у меня есть набор значений типа A
, но другой аргумент шаблона:
A<int> aIntVar;
A<char> aCharVar;
A<bool> aBoolVar;
Так что я хочу бытьв состоянии поставить указатели на каждый из них в
std::vector< /*pointer to some type that can store values above*/ > vectorOfAValues;
Вот так:
vectorOfAValues.emplace_back(&aIntVar);
vectorOfAValues.emplace_back(&aCharVar);
vectorOfAValues.emplace_back(&aBoolVar);
Но я не могу, потому что типы этих значений не полиморфны своему типу без аргументов шаблона.
Грубо говоря, я хочу сделать полиморфизм среди семейства типов, состоящих из одного типа, но с другим аргументом шаблона.