callTemplateClassConstractor.cpp
#include <vector>
#include <iostream>
template <class T>
class Hoge {
public:
Hoge();
~Hoge(){};
void print();
private: std::vector<T> t_vector;
};
class Fuga {
public:
Fuga():a_(3){};
int a_;
private:
};
template<class T>
Hoge<T>::Hoge(){
int size = 50;
t_vector.resize(size);
for(int i = 0; i < t_vector.size();++i){
t_vector[i] = T();
}
};
template<class T>
void Hoge<T>::print(){
std::cout << t_vector.size() << std::endl;
}
int main() {
Hoge<Fuga> h;
h.print();
return 1;
}
T();で呼び出しできる