#include <iostream>
//函数模板可以对类型进行优化重载,根据类型会覆盖
//如果仍然要使用模板函数,需要实例化
template<class T>
T add(T a,T b)
{
std::cout << " T add" << std::endl;
return a + b;
}
//根据调用类型,优先选择普通函数
int add(int a, int b)
{
std::cout << " int add" << std::endl;
return a + b;
}
void main()
{
int a = 10, b = 20;
double db1 = 10.9, db2 = 10.8;
add(db1, db2);
add(a,b);
add<int>(a, b); //加尖括号就可进行实例化(实例化:T为不确定的类型,加上<int>变为实例化),实现调用模板函数的目的
std::cin.get();
}
模板函数与普通函数的选择问题
最新推荐文章于 2020-12-04 21:04:34 发布