函数模板
来源:互联网 发布:vb 创建文件夹 编辑:程序博客网 时间:2024/06/13 03:14
为了加深对函数模板的理解,我们再来看一个求三个数的最大值的例子:
- #include <iostream>
- using namespace std;
- //声明函数模板
- template<typename T> T max(T a, T b, T c);
- int main( ){
- //求三个整数的最大值
- int i1, i2, i3, i_max;
- cin >> i1 >> i2 >> i3;
- i_max = max(i1,i2,i3);
- cout << "i_max=" << i_max << endl;
- //求三个浮点数的最大值
- double d1, d2, d3, d_max;
- cin >> d1 >> d2 >> d3;
- d_max = max(d1,d2,d3);
- cout << "d_max=" << d_max << endl;
- //求三个长整型数的最大值
- long g1, g2, g3, g_max;
- cin >> g1 >> g2 >> g3;
- g_max = max(g1,g2,g3);
- cout << "g_max=" << g_max << endl;
- return 0;
- }
- //定义函数模板
- template<typename T> //模板头,这里不能有分号
- T max(T a, T b, T c){ //函数头
- T max_num = a;
- if(b > max_num) max_num = b;
- if(c > max_num) max_num = c;
- return max_num;
- }
运行结果:
12 34 100↙
i_max=100
73.234 90.2 878.23↙
d_max=878.23
344 900 1000↙
g_max=1000
函数模板也可以提前声明,不过声明时需要带上模板头,并且模板头和函数定义(声明)是一个不可分割的整体,它们可以换行,但中间不能有分号。
参考:http://c.biancheng.net/cpp/biancheng/view/136.html
注意: 这里可以声明和实现都在cpp里面, 这是与模板类不一样的地方。
0 0
- 函数模板、类模板
- 模板--->函数模板
- 模板函数,模板类
- 模板之函数模板
- C++ 模板->模板函数
- 类模板(函数模板)
- 模板---函数模板
- 函数模板 类模板
- 浅谈模板----函数模板
- 关于模板--模板函数
- 函数模板、类模板
- 模板之函数模板
- 模板函数
- 函数模板
- 函数模板
- 函数模板
- 函数模板
- 模板函数
- Android webview广告过滤的实现
- Dom4j解析xml文件
- 剖析Disruptor:为什么会这么快?(三)揭秘内存屏障
- NumPy简明教程(二、数组1)
- python+ PIL 生成验证码图片
- 函数模板
- Json 数据解析
- Redis配置参数项说明
- Fiddler工具问题汇总
- [Android新手学习笔记19]-RelativeLayout相对布局
- 数据结构之栈
- 通过图片URL下载图片到本地
- js高级程序设计笔记11--HTML5脚本编程
- 双连通分量(井下矿工,LA 5135)