二级C  模板:为什么要引入模板
文章作者 100test 发表时间 2007:03:10 16:42:43
来源 100Test.Com百考试题网
模板是 C   中相对较新的一个特性。模板使程序员能够快速建立具有类型安全的类库集合和函数集合,它的实现方便了更大规模的软件开发。 
我们为什么要使用模板呢? 
首先我们分析这样两种情况: 
第一种情况是关于函数。考察两个函数,一个交换两个整型数,另一个交换两个浮点数。两个 swap() 的主体行为是一样的,无非一个是处理 int 型的,一个是处理 float 型的。所以可以通过重载函数来实现。两个函数分别如下: 
void swap(int &.a,int &.b) 
{ 
int temp=a. 
a=b. 
b=temp. 
} 
swap(float&.a,float &.b) 
{ 
float temp=a. 
a=b. 
b=temp. 
} 
但是有了模板后,重载就不必要了。 
第二种情况是关于类。对于 student 类的链表,我们有: 
class student 
{ 
//…….. 
private: 
float a. 
} 
class studentlist 
{ 
public: 
studentlist(). 
void add(student&.). 
void remove(student&.). 
~studentlist(). 
private: 
//…. 
} 
该链表类将 student 类对象作为链表结点,进行插入、删除和查找处理。 
同样如果想处理其他的任何一种类类型的对象作为结点的链表,我们必须重新对这链表进行定义。因为所定义的类的行为没有任何变化,只是处理的结点之类型有所不同,所以使得重新定义链表的工作很烦人。但是模板可以解决这个问题。下面就来讲一讲模板的定义和使用。