C++入门经典-例9.3-类模板,简单类模板

C++入门经典-例9.3-类模板,简单类模板

1:使用template关键字不但可以定义函数模板,而且可以定义类模板。类模板代表一族类,它是用来描述通用数据类型或处理方法的机制,它使类中的一些数据成员和成员函数的参数或返回值可以取任意数据类型。类模板可以说是用类生成类,减少了类的定义和数量。

2:类模板的一般定义形式如下:

template <类型形式参数表> class 类模板名

{

   ...//类模板体

}

    类模板成员函数的定义形式如下:

template <类型形式参数表>

返回类型 类模板名 <类型名表>::成员函数名(形式参数列表)

{

    ...//函数体

}

    其中,template是关键字,类型形式参数表与函数模板的定义相同。类模板的成员函数定义时的类模板名誉类模板定义时要一致。类模板不是一个真是的类,需要重新生成类,生成累的形式如下:

类模板名<类型实在参数表>

    用新生成的类定义对象的形式如下:

类模板名<类型实在参数表>对象名

    其中,类型实在参数表应与该类模板中的类型形式参数表匹配。用类模板生成的类称为模板类。类模板和模板类不是同一个概念,类模板是模板的定义,不是真是的类,定义中要用到类型参数,模板类本质上与普通类相同,它是类模板的类型参数实例化之后得到的类。

3:类模板中的类型形式参数表可以在执行时指定,也可以在定义类模板时指定。实例代码如下:

// 9.3.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <iostream>
using namespace std;
template<class T1,class T2>
class MyTemplate
{
    T1 t1;
    T2 t2;
    public:
        MyTemplate(T1 tt1,T2 tt2)
        {t1 =tt1, t2=tt2;}
        void display()
        { cout << t1 << ' ' << t2 << endl;}
};
void main()
{
    int a=123;
    double b=3.1415;
    MyTemplate<int ,double> mt(a,b);
    mt.display();
}

View Code

运行结果:

   

 

posted @ 2017-09-22 20:44 一串字符串 阅读(...) 评论(...) 编辑 收藏

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值