类模板附带一个可变数据类型,在定义类实例时指定其数据类型,产生对应于某数据类型的类。
在类和类函数定义前加“template<class T>”标识类模板,其中“T”为可变类型。
#include<iostream.h>
template<class t> // 模板前缀
class MyClass
{
public:
t value;
void setvalue(t v);
void printvalue();
};
template<class t> // 模板前缀
void MyClass<t>::setvalue(t v)
{
value = v;
}
template<class t> // 模板前缀
void MyClass<t>::printvalue()
{
cout << value;
}
main(int argc,char *argv[])
{
MyClass<int> ii; // 定义 int 类型的类
ii.setvalue(9);
ii.printvalue();
MyClass<char> cc; // 定义 char 类型的类
cc.setvalue('a');
cc.printvalue();
return 0;
}
|