函数模板的定义和使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了函数模板的定义和使用相关的知识,希望对你有一定的参考价值。

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

一般形式: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

以上是关于函数模板的定义和使用的主要内容,如果未能解决你的问题,请参考以下文章

函数模板的使用说明

实验2:函数重载函数模板简单类的定义和实现

Django自定义模板函数

在JAVA中是如何体现C++的函数模板这种机制的?

Django 模板之自定义函数

类模板模板类函数模板模板函数