函数模板以及实例化

#include<iostream>
using namespace std;
template<class T1,class T2>
T1 sum(T1 x, T2 y)
{
return x+y;
}
template<class T1,class T2,int z>
T1 csum(T1 x,T1 y)
{
return x+y+z;
}
int main()
{
//隐式实例化
cout<<"sum('a',2)="<<sum('a',2)<<endl;
cout<<"sum(2,'a')="<<sum(2,'a')<<endl;
cout<<"sum(2,3)="<<sum(2,3)<<endl;
cout<<"sum(2,3.5)="<<sum(2,3.5)<<endl;
cout<<"sum(3.5,2="<<sum(3.5,2)<<endl;
//显示实例化
cout<<"csum<int,char,3>(3,'a')="<<csum<int,char,3>(3,'a')<<endl;
cout<<"csum<char,int,3>('a',3)="<<csum<char,int,3>('a',2)<<endl;
return 0;

}


猜你喜欢

转载自blog.csdn.net/weixin_42433442/article/details/80876231