函数模板可以用来创建一个通用的函数,以支持多种不同形参,避免重载函数的函数体重复设计。它的最大的特点就是吧函数实用的数据类型作为参数。
定义的一般形式:
template <class 数据类型参数标示符>
函数返回值类型 函数名(参数表)
{
函数体
}
例如:
templat <class T1,class T2>
T1 fun(T1 a,T2 b)
{ T2=d;
、、、、、、
}
如果主调函数中有:
int x; double y;
、、、、
fun(x,y);
则系统将用实参x的数据类型int和y的数据类型double的代替函数模板中的T1和T2,生成模板函数
int fun(int a,double b)
{ double d;
、、、、
}
# include <iostream.h>
# include <string.h>
template <class T>
T min(T a,T b)
{ return (a<b?a:b) ; }
char * min(char*a,char *b)
{ return (strcmp(a,b)<0?a:b); }
void main()
{ cout<<min(3,-10)<<endl;
cout<<min(2.5,99.5)<<endl;
cout<<min('m','f')<<endl;
char *str1="The C program ",*str2="The C++ program";
cout<<min(str1,str2)<<endl;
}
原文链接: https://www.cnblogs.com/sjlove/p/3168654.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/94296
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!