本文主要是介绍模板特例化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一个特例化版本就是模板的一个独立的定义,在其中一个或多个模板参数被指定为特定的类型。
定义函数模板特例化
当我们特例化一个函数模板时,必须为原模板中的每个模板参数都提供实参。为了指出我们正在实例化一个模板,应使用关键字template后跟一个空尖括号对(<>)。空尖括号指出我们将为原模板的所有模板参数提供实参:
// compare的特殊版本,处理字符数组的指针
template <>
int compare(const char* const& p1, const char* const& p2)
{return strcmp(p1, p2);
}
当我们定义一个特例化版本时,函数参数类型必须与一个先前声明的模板中对应的类型匹配。本例中我们特例化:
tem
这篇关于模板特例化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!