标签:函数名 自动 typename main 返回 名称 区别 导出 ret
函数模板
有些算法与类型无关,所以可以将函数的参数类型也定义为一种特殊的“参数”,这样就得到“函数模板”
定义函数模板的方法:
template<typename T> 返回类型 函数名称(函数参数);
如:template<typename T> T sum(T a, T b) {return a + b;}
函数模板在调用的时候,因为编译器能够自动推导出实际参数的类型,所以,形式上调用一个函数模板与
普通函数没有区别,如:
int main()
{
int a = 3, b = 4;
cout << sum(a,b);
float f1=1.3, f2 = 9.1;
cout << sum(f1,f2);
}
函数模板参数也可赋默认值,如
template<typename T0 = float,
typename T1,
typename T2 = float,
typename T3,
typename T4>
Tofunc(T1 v1,T2 v2, T3 v3, T4 v4){...}
...
func(1,2,3);
func(‘a‘,‘b‘,"abc");
标签:函数名 自动 typename main 返回 名称 区别 导出 ret
原文地址:http://www.cnblogs.com/hujianglang/p/6691540.html