淘宝手机从华强北发货:“模板”学习笔记(6)

来源:百度文库 编辑:中财网 时间:2024/04/30 00:21:30

  函数都可以有模板,同样嘛,类当然不会放过这么好一个机会咯。类模板其实很简单,和函数模板一样,都是要首先声明一下模板类型为啥,然后再在类里面所有的东东都用这个模板来代替。我们以一个程序来说明一下:

12345678910111213141516171819202122#include using namespace std;template<class ElementType>class Sum{public:    Sum(ElementType A,ElementType B):a(A),b(B){}    ElementType sum(){return a+b;}    ElementType getA(){return a;}    ElementType getB(){return b;}private:    ElementType a,b;}; int main(){    Sum<int> test(3,4);    cout<<"第一个加数为:"<"第二个加数为:"<"\t和为:"<    Sum<double> test_2(3.4,7.9);    cout<<"第一个加数为:"<"第二个加数为:"<"\t和为:"<    return 0;}

  看到没,很简单吧。首先我们在程序的第3行声明了一个模板ElementType,其次在类Sum的定义里面,我们针对所有的元素都采用了ElementType这个模板类型。和函数模板唯一不同之处在于程序第17行和第19行,在这里,我们需要在类名Sum后面的尖括号<>里面加上实际的类型int和double。这样就可以对不同的类型数据作出不同的响应。程序的输出结果如下:

      OK~~这个就是类模板的简单示例咯