码迷,mamicode.com
首页 > 其他好文 > 详细

函数模板的定义和使用

时间:2016-04-04 21:14:05      阅读:673      评论:0      收藏:0      [点我收藏+]

标签:函数模板 定义和使用   比较3个数的大小

函数模板:建立一个通用函数,其函数类型和形参类型不具体指定,用一个虚拟的类型来代表,这个通用函数就称为函数模板。

一般形式:template<typename T>

           通用函数定义

注意:关键字typename是类型名,只适用于函数体相同、函数的参数个数相同而类型不同的情况。

例:用函数模板实现求3个数中的最大者。

程序:

#include<iostream>

using namespace std;

template<typename T>//模板声明,T为类型参数

T max(T a, T b, T c)//定义一个通用函数,T作虚拟类型名

{

if (b > a)

{

a = b;

}

if (c > a)

{

a = c;

}

return a;

}


int main()

{

int i1 = 12, i2 = 3, i3 = 9,i;

double d1 = 56.7, d2 = -23.5, d3 = 33.6, d;

long g1 = 67854, g2 = -912456, g3 = 673456, g;

i = max(i1, i2, i3);//T被int取代

d = max(d1, d2, d3);//T被double取代

g = max(g1, g2, g3);//T被long取代

cout << "i_max=" << i << endl;

cout << "d_max=" << d << endl;

cout << "g_max=" << g << endl;

system("pause");

return 0;

}

结果:

i_max=12

d_max=56.7

g_max=673456

请按任意键继续. . .


本文出自 “岩枭” 博客,请务必保留此出处http://yaoyaolx.blog.51cto.com/10732111/1760103

函数模板的定义和使用

标签:函数模板 定义和使用   比较3个数的大小

原文地址:http://yaoyaolx.blog.51cto.com/10732111/1760103

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!