【发布时间】:2020-09-10 15:05:46
【问题描述】:
考虑一个 C++ 模板类(mixin 类),它继承自模板上声明的同一个类,即,
template <class Model>
class Mixin : public Model {
...
}
动机是重用这个Mixin 来为不同的Model 类扩展方法。例如,对于模型类ModelOne,
class ModelOne {
public:
ModelOne (int a, int b) { ... }
}
被Mixin 类“修饰”并进一步扩展为
class Realization : public Mixin<ModelOne> {
...
}
如何在Realization 类中显式调用ModelOne 类的构造函数?不同的模型类可能有不同的构造函数签名。
【问题讨论】:
标签: c++ templates inheritance constructor