1.在定义类之前要用template声明类型
2.在定义类方法的时候要先用template 声明类型
3.在定义类对象的时候要指名template的实际类型
4.用new生成对象时也要指明template的类型
一个简单的例子如下:
template <typename T>
class student
{
public:
student(T A, T B):a(A),b(B){}
public:
T sum(T c);
private:
T a;
T b;
};
template <typename T>
T student<T>::sum(T c)
{
return (a+b+c);
}
student<int> *stu = new student<int>(2,5);
int main()
{
int ret = stu->sum(5);
std::cout << "sum:" << ret << std::endl;
delete stu;
return 0;
}