C++模板
模板 C++ 模板 模板是泛型编程的基础,泛型编程即以一种独立于任何特定类型的方式编写代码。前面提到过,多态体现了泛型编程的思想,其语法基础是虚函数和虚继承,那么模板同样是泛型编程必不可少的工具。 函数模板 通过函数重载的方式,可以简单实现同名函数针对不同参数及数据类型进行处理并且不产生冲突,缺点是编写的代码量偏大,函数模板可以很好地解决这个问题。 template < typename T > //模板的形式,T为类型名 //template<class T> void function ( T a ) { cout << a << endl ; } 基于模板编写的函数可以接受不同类型的参数,如果处理过程对参数类型没有明确要求与限制的情况下,可以大大减少编程工作量。另外模板也可以有多个参数,template< typename T,typename Y >。需要注意,定义了模板变量之后,函数中必须同时包含全部的模板参数类型。如下: template < typename T , typename Y > void fun ( T t , Y y ) //可用 void fun ( T t , Y y , int c1 ) //可用 void fun ( T t ) //不可用 void fun ( T t , int c1 ) //不可用 另外,template作为函数模板时