1 / 25
文档名称:

10_模板.ppt

格式:ppt   大小:163KB   页数:25
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

10_模板.ppt

上传人:63229029 2017/5/16 文件大小:163 KB

下载得到文件列表

10_模板.ppt

文档介绍

文档介绍:第9章模板 函数模板 模板函数的覆盖 类模板 函数模板 1. 问题的提出重载函数可以解决功能相同或相似的函数使用同一个函数名的问题。 void swap(char &x, char &y) { char t =x; x = y; y = t; } void swap(int &x, int &y) { int t =x; x = y; y = t; } void swap(float &x, float &y) { float t =x; x = y; y = t; }实际代码量并未减少。可使用函数模板减少大量代码。 template < typename T> 类型名函数名(参数表) {函数体} 函数模板 2. 函数模板的定义 template <class T> 或类型名函数名(参数表) { 函数体 } 函数模板就像是一个带有类型参数的函数(参数 T即为类型),编译程序会根据实际参数的类型确定参数的类型。例 定义用于变量交换的函数模板#include < > template <class T> void swap(T &x, T &y) { T temp=x; x=y; y=temp; } void main(void ){ char a='A', b='B'; int c=123, d=456; double x=, y=; swap(a , b); swap(c , d); swap(x , y); cout << a << "," << b << endl ; cout << c << "," << d << endl ; cout << x << "," << y << endl ; }程序运行结果为: 程序运行结果为: B, A B, A 456, 123 456, 123 , , T本身是一个类型参数,在调用函数 swap ()时,编译程序会根据实际参数的类型确定 T的类型。例 插入排序函数模板,使用插入排序函数模板可以为不同数据类型的数组排序,如整型、字符型、实型等等,为了使程序具有通用性,设计函数模板 InsertionSort ()。插入排序的基本思想:每一步将一个待排序的元素按其关键字值的大小插入到已排序序列的合适位置,直到待排序元素全部插入完为止。例 (续一) template <class T> void InsertionSort(T A[], int n) { int i, j; T temp; for (i = 1; i < n; i++) { / /从 A[i-1] 开始向 A[0] 方向扫描各元素,寻找适当位置插入 A[i ] j = i; temp = A[i ]; while (j > 0 && temp < A[j-1]) { / /当遇到 temp>=A[j-1] 结束循环时, j便是应插入的位置/ /当遇到 j==0 结束循环时,则 0是应插入的位置。 A[j ] = A[j-1]; / /将元素逐个后移,以便找到插入位置时可立即插入。 j--; } A[j ] = temp; } } 例 (续二) #include < > void main() { int a[10]={2,4,1,8,7,9,0,3,5,6}; double b[10]={, , , , , , , , , }; InsertionSort(a,10); InsertionSort(b,10); cout << a[0] << " " << a[1]<< " " << a[2] << " " << a[3] << " "; cout << a[4] << " " << a[5]<< " " << a[6] << " " << a[7] << " "; cout << a[8] << " " << a[9]<< endl ; cout << b[0] << " " << b[1]<<

最近更新

羧甲基纤维素在饲料稳定性研究 35页

2025年嫩江县招教考试备考题库及答案解析(夺.. 31页

2025年宁夏理工学院马克思主义基本原理概论期.. 12页

结肠癌系膜浸润机制 36页

绿色资产评估的理论与实践 30页

绿色电力交易市场发展 25页

胶合板复合材料发展趋势 35页

2026年龙年男孩名字简单大方 5页

2025年宿州职业技术学院马克思主义基本原理概.. 12页

2025年射洪县招教考试备考题库及答案解析(必.. 30页

2025年山东医学高等专科学校马克思主义基本原.. 13页

2025年山东铝业职业学院马克思主义基本原理概.. 12页

2025年广东技术师范大学马克思主义基本原理概.. 12页

2025年广州工商学院马克思主义基本原理概论期.. 12页

2025年广西师范大学漓江学院马克思主义基本原.. 12页

2025年庆云县幼儿园教师招教考试备考题库及答.. 30页

2025年徐州医科大学马克思主义基本原理概论期.. 13页

2025年惠州学院马克思主义基本原理概论期末考.. 12页

2025年文山职业技术学院马克思主义基本原理概.. 13页

2025年昔阳县幼儿园教师招教考试备考题库含答.. 31页

2025年林甸县幼儿园教师招教考试备考题库含答.. 31页

2025年永春县幼儿园教师招教考试备考题库带答.. 31页

2025年江苏农牧科技职业学院单招职业适应性测.. 46页

2025年江苏食品药品职业技术学院单招职业适应.. 44页

2025年江西枫林涉外经贸职业学院单招职业技能.. 44页

2025年河北司法警官职业学院马克思主义基本原.. 12页

2025年河南司法警官职业学院马克思主义基本原.. 13页

2025年河西学院马克思主义基本原理概论期末考.. 13页

2025年泸水县招教考试备考题库及答案解析(必.. 30页

ALC墙板蒸压加气轻质混凝土板材安装施工方案及.. 3页