一.模板
模板是C++中泛型编程的基础。一个模板就是一个创建类或函数的蓝图。
生活中常见的模板有:
编写一个比较两个值大小的函数,如果第一个值大于第二个值返回大于0的数字,两个值相等返回0,第一个值小于第二个值返回小于0的数字。
我们可以根据值类型定义多个函数,每个函数比较一种给定类型的值。如下:
//如果两个值v1大返回1,相等返回0,v1小返回-1
int compare(const string &v1,const string &v2)
{
if(v1 > v2) return 1;
if(v2 > v1) return -1;
return 0;
}
int compare(const double &v1, const double &v2)
{
if (v1 > v2) return 1;
if (v2 > v1) return -1;
return 0;
}
这两个函数几乎是相同的,唯一的差异是参数的类型,函数体则完全一样。
如果每种类型都定义一个这样的函数,是非常烦琐的。更麻烦的是,在编写程序的时候,我们就要确定可能要比较的所有类型。
因此创建一个模板是很有必要的事情
本篇完!