类模版的继承
时间: 2023-07-31 17:08:34 浏览: 76
要素类和对象模类的继承PPT学习教案.pptx
类模板的继承和普通类的继承有些不同。在继承类模板时,我们需要指定基类模板的模板参数。假设我们有一个基类模板`TemplateBase`,它需要一个整型参数`T`,并且有一个成员函数`void func()`,现在我们想要继承它,那么可以这样写:
```c++
template <typename T>
class Derived : public TemplateBase<T>
{
public:
// ...
};
```
这里我们使用`public`继承`TemplateBase<T>`,表示`Derived`中的公共成员可以直接访问`TemplateBase<T>`中的公共成员。此时,`Derived`也是一个类模板,因此在使用时也需要指定模板参数。
在继承类模板时,也可以使用模板参数作为基类模板的模板参数,例如:
```c++
template <typename T>
class AnotherDerived : public TemplateBase<std::vector<T>>
{
public:
// ...
};
```
这里我们继承了`TemplateBase`,并将它的模板参数指定为`std::vector<T>`,表示`AnotherDerived`中使用的类型是`std::vector<T>`。
阅读全文