Oracle® Solaris Studio 12.4:C++ 用户指南

退出打印视图

更新时间: 2014 年 12 月
 
 

6.2.2 类模板定义

类模板定义必须声明类数据和函数成员,如以下示例所示。

template <class Elem> class Array {
        Elem* data;
        int size;
    public:
        Array( int sz );
        int GetSize();
        Elem& operator[]( int idx );
};
template <unsigned Size> class String {
        char data[Size];
        static int overflows;
    public:
        String( char *initial );
        int length();
};

与函数模板不同,类模板可以同时有类型参数(如 class Elem)和表达式参数(如 unsigned Size)。表达式参数可以是:

  • 具有整型或枚举的值

  • 指向对象的指针或到对象的引用

  • 指向函数的指针或到函数的引用

  • 指向类成员函数的指针