(10)--3.8类模版面向对象程序设计.ppt
《(10)--3.8类模版面向对象程序设计.ppt》由会员分享,可在线阅读,更多相关《(10)--3.8类模版面向对象程序设计.ppt(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、函数模板函数模板 概念:概念:建立一个通用函数,其函数类型和形参类型不具体指定,用一个虚拟的类型来代表。这个通用函数就称为函数模板 特点:特点:凡是函数体相同的函数都可以用这个模板来代替,不必定义多个函数,只须在模板中定义一次即可。函数模板函数模板 一般形式:一般形式:template 通用函数定义或template 通用函数定义函数模板函数模板 声明函数模板声明函数模板 调用模板函数调用模板函数template/模板声明模板声明,其中的其中的T为类型参数型参数 T max(T a,T b,T c)/定定义一个通用函数一个通用函数,用用T作虚作虚拟的的类型名型名 if(ba)a=b;if(ca
2、)a=c;return a;int i1=185,i2=-76,i3=567,i;double d1=56.87,d2=90.23,d3=-3214.78,d;long g1=67854,g2=-912456,g3=673456,g;i=max(i1,i2,i3);/调用模板函数用模板函数,此此时T被被int取代取代d=max(d1,d2,d3);/调用模板函数用模板函数,此此时T被被double取代取代g=max(g1,g2,g3);/调用模板函数用模板函数,此此时T被被long取代取代类模版模版 何时使用:何时使用:有两个或多个类,其功能是相同的,仅仅是数据类型不同时,考虑使用类模版。cl
3、ass Compare_intpublic:Compare(int a,int b)x=a;y=b;int max()return(xy)?x:y;int min()return(xy)?x:y;float min()return(xy)?x:y;private:float x,y;类模版模版 声明类模版:声明类模版:template /声明一个模板,虚声明一个模板,虚拟类型名型名为numtypeclass Compare /类模板名模板名为Comparepublic:Compare(numtype a,numtype b)x=a;y=b;numtype max()return(xy)?x:y
4、;numtype min()return(xy)?x:y;private:numtype x,y;类模版模版 使用类模版:使用类模版:一般形式:一般形式:类模板名类模板名 对象名对象名(参数表参数表););Compare cmp(4,7);程序程序实例例使用使用类模版比模版比较大小数大小数#includeusing namespace std;template/声明声明类模板模板,虚虚拟类型名型名为numtypeclass Compare /类模板名模板名为Comparepublic:Compare(numtype a,numtype b)/定定义构造函数构造函数 x=a;y=b;numtyp
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 10 3.8 模版 面向 对象 程序设计
限制150内