template --声明创建模板I
typename -- 表面其后面的符号是一种数据类型,可以用class代替
T --- 通用的数据类型,名称可以替换,通常为大写字母
使用模板之前:
#include<iostream>
using namespace std;
#include<string>
#include<fstream>
//两个整型交换函数
void swapInt(int &a, int &b) {
int temp = a;
a = b;
b = temp;
}
//交换两个浮点型函数
void swapDouble(double &a,double &b) {
double temp = a;
a = b;
b = temp;
}
//函数模板
template<typename T> //声明 二 = 个模板,告诉编译器后面代码中紧跟着的T不要报错,T是 - 一个通用数据类型二
//函数模板
void mySwap(T &a, T &b) {
T temp = a;
a = b;
b = temp;
}
void test01() {
int a = 10;
int b = 20;
swapInt(a,b);
cout << " a =" << a << endl;
cout << " b=" << b <<endl;
double c = 1.1;
double d = 2.2;
swapDouble(c,d);
cout << " c=" << c <<endl;
cout << " d="