C ++模板样式代码

时间:2015-03-23 20:27:18

标签: c++ templates

以下模板样式c ++代码中的含义是什么: class_name<T, S>* obj_name;

模板类在.h文件中定义如下:

template <typename T,int S>
class class_name {
    public:
    //function definitions follow

2 个答案:

答案 0 :(得分:3)

class_name是模板化类的名称,*表示指向的指针。所以obj_name是指向class_name参数化T, S的实例的指针(T,S可能依赖于外部代码,因此也是参数化的。)

答案 1 :(得分:1)

对于任何类型Type,以下代码声明并定义了一个指向Type的指针t

Type* t;

在您的示例中,Type恰好是类class_name<T, S>,它是类模板class_name的一个实例。

class_name<T, S>* obj_name;

还有什么?