1.使用模板的时候必须要指定数据类型T
2.函数模板与普通函数区别:
1.是否可以发生自动类型转换:
1.普通函数可以
2.函数模板分情况:
1.函数模板要是采用自动类型推导,则不可以自动类型转换。(无法确定T的具体类型)
2.函数模板要是采用指定类型,则可以进行自动类型转换
3.普通函数与函数模板都可以调用时,优先调用普通函数(即使普通函数没有函数体,此时也不调用函数模板,会报错),可以通过空模板参数列表强制调用函数模板,即在函数名和参数列表之间加一个"<>"
4.如果函数模板可以产生更好的匹配,那么调用函数模板(如:如果普通函数会发生隐式类型转换,函数模板只发生类型匹配,那么此时调用函数模板)
5.函数模板也可以发生重载
总结:已经写了函数模板的情况下,就不要再去写普通函数了,容易发生二义性