C++中类模板与模板类定义及具体使用方法

C++中类模板与模板类定义及具体使用方法

ID:39453779

大小:33.50 KB

页数:4页

时间:2019-07-03

C++中类模板与模板类定义及具体使用方法_第1页
C++中类模板与模板类定义及具体使用方法_第2页
C++中类模板与模板类定义及具体使用方法_第3页
C++中类模板与模板类定义及具体使用方法_第4页
资源描述:

《C++中类模板与模板类定义及具体使用方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、类模板   类模板也称为类属类或类生成类,是为类定义的一种模式,它使类中的一些数据成员和成员函数的参数或返回值可以取任意的数据类型。类模颁布是一个具体的类,它代表着一族类,是这一族类的统一模式。使用类模板就是要将它实例化为具体的类。   定义类模板的一般形式为:   template   class类名   {     //……   }其中,template是声明类模板的关键字;template后面的尖括号不能省略;数据类型参数标识符是类模板中参数化的类型名,当实例化类模

2、板时,它将由一个具体的类型来代替。   定义类模板时,可以声明多个类型参数标识符,各标识符之间用逗号分开。   类定义中,凡要采用标准数据类型的数据成员、成员函数的参数或返回类型的前面都要加上类型标识符。   如果类中的成员函数要在类的声明之外定义,则它必须是模板函数。其定义形式为:   template数据类型参数标识符类名<数据类型参数标识符>∷函数名(数据类型参数标识符形参1,……,数据类型参数标识符形参n){ 函数体}模板类将类模板的模板参数实例化后生成的具体的类

3、,就是模板类。由类模板生成模板类的一般形式为:类名<数据类型参数标识符>对象名1,对象名2,…,对象名n;这里的数据类型参数标识符对应的是对象实际需要的数据类型。   6.4 应用举例   例6.1函数模板的声明和模板函数的生成的例。   #include   template        //声明模板函数,T为数据类型参数标识符   voidswap(T&x,T&y)        //定义模板函数   {     Tz;                

4、     //变量z可取任意数据类型及模板参数类型T     z=y;y=x;x=z;   }   voidmain()   {     intm=1,n=5;     doublea=8.9,b=3.4;     cout<<”m=”<

5、//实例化为双精度型模板函数     cout<<“m与a,n与b交换以后:”<   constintsize=10; 

6、  template   classstack   {     Tstck[size];     intt;     public:       stack(){t=0;}       voidpush(Tch);       Tpop();   };   template   voidstack::push(Tob)   {     if(t==size)       {         cout<<”stackisfull!”<

7、turn0;       }     stck[t]=ob;     t++;   }template   voidstack::pop()   {     if(t==0)       {         cout<<”stackisempty!”<cs1,cs2;     inti;     cs1.p

8、ush(‘a’);     cs2.push(‘x’);     cs1.push(‘b’);     cs2.push(‘y’);     cs1.push(‘c’);     cs2.push(‘z’);     for(i=0;i<3;i++)       cout<<”popcs1:”<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。