- 1、本文档共40页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《C++面向对象程序设计》教学内容 第1章 C++概述 第2章 类和对象 第3章 面向对象程序设计概述 第4章 进一步学习类和对象 第5章 堆与复制构造函数 第6章 继承性:派生类 第7章 运算符重载 第8章 虚函数和多态性 第9章 模板 第10章 类库和C++的标准模板库STL 第11章 输入输出流 第12章 异常处理 第9章 模板 9.1 模板的概念 9.2 函数模板 9.3 重载模板函数 9.4 类模板的定义 9.5 使用类模板 9.6 应用举例 问题的引入 很多算法本身的描述其实与其所涉及数据的类型是无关的。 但是,高级语言大多数都是基于类型系统的语言,当用高级语言表达算法的实现时,就必须明确指出其具体的数据类型, 这样以来就必然导致同一个算法有多个不同的实现(针对不同的数据类型)。 从而使工作量加大,使用麻烦,维护困难。 例:将两个数进行交换 (请同学们想一想共有几种方案?) 解决方案一:宏定义 在C语言中,宏定义是解决类型无关算 法的首选解决方案。例: #define max(x, y) ( (x)(y) ? (x):(y) ); 宏定义有如下的缺点: 重复计算 只能处理简单的情况 例如:这里的 Swap(x,y) 使用宏定义就不好处理。 解决方案二:用C语言的函数 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; } 解决方案三: C++函数名重载 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; } 9.1 模板的概念 模板的英文为template,又可译作样板。 C++中的模板可以用来设计与数据类型无关的通用算法。 这样的通用算法能够适用不同场合下不同的数据类型。 通过针对不同的数据类型实例化这些模板,可以实现代码重用,从而达到提高软件生产率的目的。 模板的作用 通过模板可以产生类或函数的集合,使它们操作不同的数据类型, 从而避免需要为每一种数据类型都编写一个单独的类或函数。 什么是模板template? 所谓模板是一种是将类型参数化来产生一系列函数或类的机制。 9.2 函数模板 template class type ret_type func_name ( parameter list ) { // body of function } typ
您可能关注的文档
- 2014-2015高中数学必修5课件28份高中数学全程学习方略配套课件1.1.2余弦定理人教A版必修5.ppt
- §1.善待他人课件善待他人2章节1章节.ppt
- §1.善待他人课件善待他人4章节1章节.ppt
- 2014-2015高中数学必修5课件28份高中数学全程学习方略配套课件1.2.1.1解三角形的实际应用举例——距离问题人教A版必修5.ppt
- §1.善待他人课件善待他人5章节1章节.ppt
- 正文课件第三章涡轮机及喷气发动机.ppt
- 2014-2015高中数学必修5课件28份高中数学全程学习方略配套课件1.2.3三角形中的几何计算人教A版必修5.ppt
- 正文课件第四章热力发电与核电.ppt
- PhotoshopCC图像处理项目教程项目十通道的灵活应用.ppt
- 2014-2015高中数学必修5课件28份高中数学全程学习方略配套课件2.1.1数列的概念与简单表示法人教A版必修5.ppt
最近下载
- tb 10106-2023《铁路工程地基处理技术规程》(OCR).pdf
- 教资国考复习初中历史必备知识点.pdf
- 3万吨亚磷酸、2万吨三乙胺项目可行性研究报告写作模板-备案审批.doc
- 《大气污染控制工程》课程教学大纲.pdf VIP
- 拜城县老虎台铁矿开采设计方案.doc
- A2数字教育资源获取与评价作业1-主题说明. 高中语文《沁园春.长沙》. 教师自主选择一个教学主题,描述其主要内容、教学对象、教学环境等。.docx
- 农村防灾减灾知识.pptx
- 浙江省生物多样性调查技术导则.pdf VIP
- 2023-2024学年度冀教版五年级上册小学数学期末考试卷 .pdf VIP
- 大气污染控制工程课件.pptx VIP
文档评论(0)