模板:
支持多种类型的返回值类型和参数类型(类型参数化)
定义方式:
template<typename T>
T func(T a,…){
}
调用方式:
1.自动类型推导
2.显示指定类型
#include<iostream>
#include<cstdio>
using namespace std;
template<typename T>
void func(T &a, T &b){
T t = T();
t = a;
a = b;
b = t;
}
int main(){
int a = 10;
int b = 20;
// 自动类型推导
func(a, b);
cout<<a<<" "<<b<<endl;
double c = 1.1;
double d = 1.2;
func(c, d);
cout<<c<<" "<<d<<endl;
// 显示指定类型
func<int>(a,b);
cout<<a<<" "<<b<<endl;
return 0;
}