c++类模板
来源:互联网 发布:overwolf是什么软件 编辑:程序博客网 时间:2024/05/22 12:47
如果要比较两个数的大小,比如要比较两个整型数的大小
可以这样写个类:
class Compare_int{ public: Compare_int(int arg1, int arg2):number1(arg1),number2(arg2){} int max() { if (number1 > number2) return number1; else return number2; } private: int number1; int number2;};
如果要比较两个数是浮点数,就得这样写一个类:
class Compare_float{ public: Compare_float:(float arg1, float arg2):number1(arg1),number2(arg2){} float max() { if (number1 > number2) return number1; else return number2; } private: float number1; float number2;};
如果是double类型的呢?然后又要写一个类似于上面的double类型的类。这样是不是很麻烦?
麻烦总有解决办法,这个解决办法就是类模板。
有两个或多个类,其功能是相同的,仅仅是数据类型不同,就可以用类模板来解决问题。
template<class type>class Compare{ public: Compare:(type arg1, type arg2):number1(arg1),number2(arg2){} type max(); private: type number1; type number2;};/***注意,以下的函数定义是不对的*/type Compare::max(){ //内容}/***************************//****正确的定义*********/template <class type>type Compare <type>::max(){ return (number1 > number2) ? number1 : number2;}/*然后是如何定义一个类模板的对象*//*类模板是这样定义对象的*/Compare <类型> 对象名(初始化的值);/*比如定义一个int形的对象*/Compare <int> compare(5, 10);/*如果是float形的*/Cpmpare <float> compare(5.1f, 18.6f);
- 【c/c++】类模板
- 【C/C++】模板类
- 【c++】模板和模板类
- C/C++:函数模板与类模板
- [C/C++]模板函数与模板类
- c++vector模板类
- c++vector模板类
- c++:类模板
- [C++]类模板
- C++:类模板
- 【c++】类模板
- C++stack模板类
- 类模板与模板类(C++)
- C++,template,类模板和函数模板
- C++:函数模板、类模板及其特化
- C++---函数模板与类模板
- Linux C/C++ 模板:类模板(主模板)
- C/C++_log2000_函数模板与类模板笔记1
- hdu - 4339 - Query - 树状数组||线段树
- Spring学习小结
- 用matlab的右除实现最小二乘拟合
- Oracle学习----select基本语句
- 版本控制svn的使用
- c++类模板
- VC++ MFC总结,一点点
- 爱因斯坦说过的名言,我的一些理解(一)
- open vswitch研究:ovs的安装和使用
- servlet—jsp日集中总结总结
- eclipse插件地址
- VC++,C++语言 获取 本机 IP 地址 例程
- Android 4.03 编译系统------envsetup.sh
- 使用grid控件时,含有combo列表框的情况下,无法显示下拉列表,可能的解决方法