您的位置:首页 > 其它

一个简单的类模板的使用

2011-03-08 19:53 344 查看
#include<iostream>
#include <string>
using namespace std;
template<class T>
class Mylist
{
public:
Mylist(T x,T y):a(x),b(y){};
void print();
private:
T a;T b;
};

template<class T>//不可少
void Mylist<T>::print()
{
cout<<"a="<<a<<" "<<"b="
<<b<<endl;
}
void main(void)
{
Mylist<string> mylist("string1","string2");
Mylist<int> mylist2(2,5);
mylist.print();
mylist2.print();
system("pause");
}声明和定义都要放在同一个 文件中,否则会出现错误提示 error LNK2019: 无法解析的外部符号。

PS:如果非要将声明和定义分开,那么在 .cpp 文件中需要具体定义出该模板支持什么类型,比如在 .cpp 文件末尾添加 template class CTest<int> ,如果想用其他类型,也要把相应的类型对应的语句写在 cpp 末尾。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: