D: C 12-3 data.hpp: 22: error: 在没有参数列表 data: : data () ^ 的情况下无效使用模板名称“ data”
#ifndef DATA_H
#define DATA_H
#include <iostream>
using namespace std;
template <class T1,class T2>
class data
{
private:
T1 a;
T2 b;
public:
data();
data(T1 a,T2 b);
void show(void);
};
#endif // DATA_H
template<class T1, class T2>
data<T1,T2>::data()
{
cout<<"无参构造"<<endl;
}
template<class T1, class T2>
data<T1,T2>::data(T1 a, T2 b)
{
this->a=a;
this->b=b;
}
template<class T1, class T2>
void data<T1,T2>::show()
{
cout<<a<<" "<<b<<endl;
}
类模板类外定义,作用域需要有类的参数列表,data<T1,T2>::show();的<T1,T2>不能忘记。
void data<T1,T2>::show()
{
cout<<a<<" "<<b<<endl;
}