Image

Imagekkirsanov wrote in Imageru_cpp

Уложить шаблоны в контейнер.

Есть класс:

template<class T>
class A{
public:
  T data;  
}

Хочется создать несколько его экземпляров с разной специализацией и уложить в контейнер указатели на них:

vector<A*> vec;

for(vector<A*>::itertator it=vec.begin();it!=vec.end();it++){
  cout << *(it->data);
}

Что, естественно, не срабатывает т.к. A<int> и A<double> совершенно перпендикулярны друг другу, а я пытаюсь работать с ними как полиморфными классами.

Нужна утиная типизация, которой в С++ нет.


Соответственно вопрос — как проще всего её симулировать в С++.