在C++中,函数模板template是一种把函数的定义和实现放在一起的方式,它可以自动生成使用特定数据类型的函数。它的定义格式如下:
templatereturntype functionname(parameterlist) { //函数体 }
其中,typename T是模板参数,可以自定义;returntype是函数的返回值类型;functionname是函数名;parameterlist是函数参数列表。
使用方法
- 定义函数模板:在C++中,函数模板的定义格式如上所示,可以自定义模板参数,函数返回值类型,函数名,函数参数列表。
- 调用函数模板:在调用函数模板时,需要指定模板参数的类型,以便编译器确定模板实参,根据模板实参类型生成函数实例。
例如,定义一个函数模板,用来计算两个数的最大值:
templateT max(T x, T y) { return x > y ? x : y; }
调用函数模板时,需要指定模板参数的类型,例如,计算两个int类型的最大值:
int a = 3, b = 5; int m = max(a, b); // m = 5
此时,编译器会根据模板实参int生成函数实例,并返回最大值5。