目录
1.泛型编程
如何实现一个通用的Swap交换函数
void Swap(int& left, int& right)
{
int temp = left;
left = right;
right = temp;
}
void Swap(double& left, double& right)
{
double temp = left;
left = right;
right = temp;
}
void Swap(char& left, char& right)
{
char temp = left;
left = right;
right = temp;
}
- 使用函数重载虽然可以实现,但每个Swap仅仅是类型不同,代码复用性很低。每当出现一个新的类型,需要用户显示去添加
- 代码出现一个错误,所有的Swap函数都会出错
那能不能给编译器一个模子,让编译器根据不同的类型用整个模子来生成相对应的代码呢?
泛型编程:编写与类型无关的通用代码,是代码复用的一种手段。模板是泛型编程的基础