函数特化抓哟解决模板函数不能解决的问题,如:
template ;
T int (T a,T b){
return cout<<a>b?a:b<<endl;
}
若a与b是字符型等无法进行比较,像这类问题我们将需要对函数模板进行特化,
函数模板特化形式为:
template <> 特化返回类型 模板名<模板实参列表>(函数参数列表)
如:
typedef const char *pcc; //定义const char *的类型别名
template <> pcc max (pcc s1, pcc s2){}
如果函数模板的返回类型与函数参数的类型相同可省略模板实参列表,即
template <> pcc max(pcc s1, pcc s2){}