模板是C++支持参数化多态的工具,使用模板可以使用户为类或者函数声明一种一般模式,使得类中的某些数据成员或者成员函数的参数、返回值取得任意类型。

  模板是一种对类型进行参数化的工具;

  通常有两种形式:函数模板类模板

  函数模板针对仅参数类型不同的函数

  类模板针对仅数据成员成员函数类型不同的类。

  使用模板的目的就是能够让程序员编写与类型无关的代码。比如编写了一个交换两个整型int 类型的swap函数,这个函数就只能实现int 型,对double,字符这些类型无法实现,要实现这些类型的交换就要重新编写另一个swap函数。使用模板的目的就是要让这程序的实现与类型无关,比如一个swap模板函数,即可以实现int 型,又可以实现double型的交换。模板可以应用于函数和类。下面分别介绍。

  注意:模板的声明或定义只能在全局,命名空间或类范围内进行。即不能在局部范围,函数内进行,比如不能在main函数中声明或定义一个模板。

 以上http://www.cnblogs.com/gw811/archive/2012/10/25/2738929.html转自。。。。。。。

类模板

 1 #include<iostream>
 2 #include<math.h>
 3 #include<string>
 4 using namespace std;
 5 template<class T>class test{
 6     public:
 7     T a;
 8     T b;
 9     test(T a,T b)
10     {
11         this->a=a;
12         this->b=b;
13 
14     }
15     void print()
16     {
17         cout<<a<<"***"<<b<<endl;
18     }
19 
20 };
21 int main()
22 {
23     test<int> one(10,20);
24     one.print();
25     test<string> two("dd","cc");
26     two.print();
27 
28 }
View Code

相关文章: