私は次のようなテンプレートクラスを持っています:
template <class TYPE>
class Temp {
public:
Temp(TYPE _val) : var(_val){};
TYPE var;
};
このテンプレート クラスのオブジェクトを、STL コンテナーと言うベクターに格納したいと考えています。
void print(vector<Temp<TYPE> *> & _vec) {
for(unsigned short i = 0; i < _vec.size() ; i++)
cout << " Value of stored variable is : " << (*_vec[i]).var << endl;
}
int main(int argc, char* argv[]) {
vector<Temp<TYPE> *> cont;
Temp<int> t1(20);
Temp<float> t2(1.4);
cont.push_back(&t1);
cont.push_back(&t2);
return 0;
}
タイプを定義せずに stl コンテナーを割り当てることができないことはわかっています。これを行う方法はありますか?私はboost.variantを使用できません。