1.函数模版定义
函数模版是通用的函数描述,它使用泛型来定义函数,其中的泛型可用具体的类型替换,通过将类型作为参数传递给模版,可以编译器生成该类型的函数,如下创建一个交换函数模版:
template<typename T>
void swap(T& a,T&b)
{
T temp;
temp = a;
a = b;
b = temp;
}
模版并不创建任何函数,而是告诉编译器如何定义函数。需要交换int的函数时,编译器将按模版模式创建这样的函数,并用int替换T。
在调用函数模版时,如下:
int main()
{
int a = 1;
int b = 2;
swap(a,b);
}
编译器会生成如下的函数
void swap(int &a,int &b)
{
int temp;
tem