函数模板的注意事项1:在进行自动类型推导时,必须要推导出一致的数据类型
否则编译器也不知道该使用哪种数据类型
注意事项2.模板必须要确定出T的数据类型,才可以使用
#include<iostream>
using namespace std;
template<typename T>
void func(T a, T b)
{
cout << "func的调用" << endl;
}
void test01()
{
int a = 10;
char b = 'c';
//func(a, b);//错的!对于传入 的数据类型不一样的
//因为编译器不知道你想要哪种数据类型
//所以自动类型推导是不可以自动类型转换的
//对于显式指定类型就可以进行类型转换,
//因为已经告诉编译器是哪种类型的了
func<int>(a, b);//正确
cout << "a=" << a<<endl;
cout << "b=" <<b<< endl;
}
int main(void)
{
test01();
system("pause");
return 0;
}