首页 > 代码库 > c++中函数模板的使用

c++中函数模板的使用

在程序设计中,经常要使用到函数体相同的函数,如果我们要根据所使用的参数表不同来决定调用具体哪个函数时,我们经常使用的方式是进行函数重载,但是当我们的函数很多的时候会发现实现起来很不方便。所以c++提供了函数模板的概念,这和类模板实现起来的方式是类似的。

下面举个例子,我们经常要使用的冒泡排序算法,被排序的对象可能是double,int,char,float等等,下面是实现代码:

template <typename T1,typename T2>
void bubble(T1 *A, T2 len)
{
	T1 temp;
	for(int i=0;i<len;i++)
	{
		for(int j=i;j<len;j++)
		{
			if(A[i]>A[j])
			{
				temp=A[i];
				A[i]=A[j];
				A[j]=temp;
			}
		}
	}
}
这样我们就可以根据被排序对象的类型进行具体函数调用了。


c++中函数模板的使用