5 模板.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象程序设计 第5单元 模板 模板的概念 函数模板 重载模板函数 类模板 引言 很多算法本身的描述其实与其所涉及数据的类型是无关的。 但是,高级语言大多数都是基于类型系统的语言。 当用高级语言表达算法的实现时,就必须明确指出其具体的数据类型, 这样一来,就必然导致同一个算法有多个不同的实现(针对不同的数据类型),从而使工作量加大,使用也麻烦,维护起来更困难。 例: 将两个数进行交换 (请同学们想一想共有几种方案?) 引言 在C语言中,宏定义是解决类型无关算法的首选解决方案。 例: #define max(x, y) ( (x)(y) ? (x):(y) ); 宏定义有如下的缺点: 重复计算; 只能处理简单的情况 。 例如: 这里的 Swap(x,y) 使用宏定义就不好处理。 引言 void SwapI(int *x, int *y) { int temp; temp = *x; *x = *y; *y = temp; } void SwapF(float *x, float *y) { float temp; temp = *x; *x = *y; *y = temp; } 引言 void Swap (int x, int y) { int temp; temp = x; x = y; y = temp; } void Swap (float x, float y) { float temp; temp = x; x = y; y = temp; } 引言 template class T void swap(T x, T y) { T t; t = x; x = y; y = t; } 5.1 什么是模板 模板的英文为template,又可译作样板。 C++中的模板可以用来设计与数据类型无关的通用算法,是C++支持多态性的一种工具。 使用模板可以让用户得到类或函数声明的一种通用模式。使得类中的某些数据成员或者成员函数的参数、返回值取得不同的类型。 通过针对不同的数据类型实例化这些模板,可以实现代码重用,从而达到提高软件生产率的目的。 通过模板可以产生类或函数的集合,使它们操作不同的数据类型,从而避免需要为每一种数据类型都编写一个单独的类或函数。 模板将用“类型参数”来完成不同的功能。 5.1 什么是模板 【例】设计一个求两参数最大值的函数。 不使用模板时,需要定义四个函数: int max(int a,int b){return(ab)?a:b;} long max(long a,long b){return(ab)?a:b;} double max(double a,double b){return(ab)?a:b;} char max(char a,char b){return(ab)?a:b;} 若使用模板,则只定义一个函数: Templateclass typetype max(type a,type b) { return(ab)?a:b; } 5.1 什么是模板 模板分为: 函数模板(function template) 类模板(class template) 5.2 函数模板 函数模板的一般说明形式如下: template 模板形参表 返回值类型 函数名(模板函数形参表) { //函数定义体 } 其中, 模板形参表:可以包含基本数据类型,也可以包含类类型。类型形参需要加前缀

文档评论(0)

海川电子书城 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档