三、函数模板注意事项
**注意事项:**
- 自动类型推导必须推导出一致的数据类型T,才可以使用
- 模板函数必须要确定出T的数据类型,才可以使用
#include <iostream>
using namespace std;
template<typename T> // 声明一个模板
void mySwap(T& t1,T& t2 ){
T temp = t1;
t1 = t2;
t2 = temp;
}
int main(){
int a = 10;
double b = 20;
// 采用自动类型推导调用模板函数
mySwap(a,b); // 推导出的a,b的数据类型不相同,错误!!
cout << "a = " << a << endl;
cout << "b = " << b << endl;
system("pause");
return 0;
}
#include <iostream>
#include <string>
using namespace std;
template<typename T>
void func(){
cout << "func函数的调用" << endl;
}
int main(){
func(); // 没有确定出T的数据类型,错误!
return 0;
}