模板和C#的泛型很相似!
如下代码
代码
#include
<
iostream
>
#include < string >
using namespace std;
template < typename T >
T maxValue(T value1,T value2)
{
if (value1 > value2)
{
return value1;
}
return value2;
}
int main()
{
cout << maxValue( 1 , 3 ) << endl;
cout << maxValue( " a " , " b " ) << endl;
cout << maxValue( 1.5 , 2.66 ) << endl;
char a;
cin >> a;
}
#include < string >
using namespace std;
template < typename T >
T maxValue(T value1,T value2)
{
if (value1 > value2)
{
return value1;
}
return value2;
}
int main()
{
cout << maxValue( 1 , 3 ) << endl;
cout << maxValue( " a " , " b " ) << endl;
cout << maxValue( 1.5 , 2.66 ) << endl;
char a;
cin >> a;
}
函数模板的定义以关键字template开始
后面跟一个参数列表
每个参数前面都必须有关键字template或class
这就是模板前缀
一个模板函数可能有多个类型参数