




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、template template 函数体定义/template 开始的,该关键字之后是使用尖括号括起 形式为templatetypename 数据类型参数标识符其中,template 是定义模板函数的关键字;template 后面的尖括号不能省略;typename(class) Tfuc(TTdoubled; d的数据类型doubleTTdoubled; d的数据类型doubleTdoublefuc(doubledouble class 函数模板允许使用多个类型参数,但在 template typename或classtemplateclass 1,class template语句与函数模板
2、定义语句之间不允许有别的语句。如下面的12345template语句与函数模板定义语句之间不允许有别的语句。如下面的12345678template Tx,T2. 123456789 void&x,Treturnvoidi,charmin(ii正确调用 min(jj正确调用 min(ijmin(jimin(ii正确调用 min(jj正确调用 min(ijmin(ji1min(i,ij不能解, nt( void&x,Treturnvoidmin(i,min(j,min(i,min(j,i,char。1. 模板的概已经学过重载(Overloading),对重载函数。1. 模板的概已经学过重载(Ov
3、erloading),对重载函数而言,C+的检查机制能通过函数参数的不同及所类的不同。正确的调用重载函数。例如,为求两个数的最大值定义 MAX()函数需要对不/函数return(xy)?x:y/函数floatmax(floatx,floatreturn(xy)?x:y/函数doublemax(doublex,doublereturn(cy)?x:y但如果在主函数分别定义了 chara,b; 那么在max(a,b);时 程序就会出错,因没有定义char的重现在新审视上述的 一套代码解决现在新审视上述的 一套代码解决这个问题呢?这样就会避免因重载函数定义不 全面而带来的调用错误。为解决上述题 即把
4、类型定义为参数, 从而实现了真正的代码可重用性。模版可以分为两类,一个是函数模版,外一个是类模版函数模板的写函数模板的一般形式如下 返回类型 函数名(形参表/函数定义体 说明: template一参多余一个 ,每个形参前都要加class 可以包含基本数据类型可以包请看以下程序#includeusingusing一个函数模版,用来比较输入的两个相同数据类型的参数的大小,classtypenametemplateclassT x,T voidmain(doublecoutcout程序 voidmain(doublecoutcout程序main()函数中定义了两个整型变量n1n2 两个双精度类型变量
5、d1d2然后调用minn2); 即实例化函数模板Tx,Ty)其中型求出n1,n2中的最小值同理调用时d1,d2中的3. 类模板的定义一个类模板Templateclass或者也可以用typenameTclass类名类定义 是是多/ #ifndef#define templatetypenameT1,typenameclassT1 T2 myClass(T1a,T2void#define templatetypenameT1,typenameclassT1 T2 myClass(T1a,T2voidtemplatetypenameT1,typenamemyClass:myClass(T1a,T2/
6、这是voidtemplate,char,char class, , 标准模板库STL简介 STL 的代码从广义上讲分为三类:algorithm(算法、container(容器)和 iterator(迭标准模板库STL简介 STL 的代码从广义上讲分为三类:algorithm(算法、container(容器)和 iterator(迭 、的STL100for_each将为指定序列中的每一 STL头文件中最大的一个(尽管它很好理解,它是由一大堆模版函数组成的,可以认为每算的模板函数,包括加法和乘法在序列上的一些操作。2的代码,这些代码都十分相似,只是为了适应不同数据的变化而在细节上有所出入。 向量列表双队列集合栈队列列表双队列集合栈队列3STL STL 中用来将算法和容器联系起来,起着一种黏STL 提供的所有算法都是通过迭代器存取元素序列进行工作的,每一个STL 中的几个模板的 , 2. 2. O(1 随3. 对list随3.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 墩、台身和盖梁工程现场质量检验报告单(五)
- 智能交通管理平台开发协议
- 办公用品采购预算与实际使用对比表格
- 专业资料出版合作协议
- 水利水电工程施工承包协议
- 企业品牌授权使用协议书
- 小学生体育运动启蒙故事读后感
- 太阳能光伏系统安装维护合同
- 2024-2025学年高二数学湘教版选择性必修第二册教学课件 第2章-2.4空间向量在立体几何中的应用-2.4.3 向量与夹角
- 水系统基础知识培训课件
- 移动商务专业教学资源库申报书
- 人教鄂教版-科学-三年级下册-知识点
- 2024年北师大版五年级数学下册第二单元长方体(一)检测卷(提高卷)含答案
- DZ∕T 0248-2014 岩石地球化学测量技术规程(正式版)
- 四宫格儿童数独练习60题
- 2024年内蒙古国有资本运营有限公司招聘笔试冲刺题(带答案解析)
- 三年级乘法口算500题
- 小班《认识正方形》课件
- 名著《骆驼祥子》阅读任务单 统编版语文七年级下册
- 2023-2024全国初中物理竞赛试题第09讲杠杆(原卷版)
- 2024年新大象版四年级下册科学全册精编知识点总结
评论
0/150
提交评论