一个简单的类模板的使用
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 末尾。
#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 末尾。
相关文章推荐
- TEC1401.Report开发技术总结 - 第七章 使用BI Publisher开发报表-创建一个简单的RTF模板(2/5)
- 教你使用javascript简单写一个页面模板引擎
- 教你使用javascript简单写一个页面模板引擎
- 一个前端攻城狮的全栈之路第四弹:jade模板引擎的简单介绍和使用
- 一个超级简单的HTML模板框架源代码以及使用示例
- iOS开发UI篇—使用嵌套模型完成的一个简单汽车图标展示程序
- 使用ireport设计jasperreport报表模板,以及简单的设计使用案例
- 简单记录一个PoupWindow使用时碰到的问题
- 如何使用 CoreText 创建一个简单的杂志应用
- 使用Node.js + MongoDB实现一个简单的日志分析系统
- OpenCms JSP 模板开发——创建一个简单的JSP模板
- 使用Google Test的一个简单例子
- Silverlight学习笔记一(理解一下机制,使用一下布局,实现一个简单的用户登录)
- 使用ServerSocket、Socket创建一个简单的服务聊天程序
- 使用D3.js+Vue实现一个简单的柱形图
- 如何使用Cocos2D 2.X生成一个简单的iPhone游戏 (2/8)
- 使用libevent和boost编写一个简单的tcp服务器
- 先简单写一个,Linux下man命令使用的一些东东
- 使用数据库存储过程完成一个简单分页
- 使用ASP.NET MVC 4 创建一个简单的应用程序