函数模版
定义一个函数以适用于不同的参数的方式。例如:
函数模版仍然可以重载,例如:
1.函数在调用时,优先选择non-template function,如果不存在才会选择template function。
2.函数模版不支持类型转换,因此,如果使用该调用max('a', 4.5);则会调用non-template function(重载的int函数)。
定义一个函数以适用于不同的参数的方式。例如:
- template <typename T>
- inline T const& max (T const& a, T const& b)
- {
- return a < b ? b : a;
- }
- inline int const& max (int const& a, int const& b)
- {
- return a < b ? b : a;
- }
2.函数模版不支持类型转换,因此,如果使用该调用max('a', 4.5);则会调用non-template function(重载的int函数)。