据我了解,当我在派生类初始化器列表中初始化基类时,会立即构造基类,然后应该可以使用基类元素。如果这是正确的,为什么这不起作用?
class Base
{
public:
int elem;
}
class Derived : public Base
{
Derived() : Base(), elem(1) {}
// error: class 'Derived' does not have any field named 'elem'
}
注意:就我而言,我无法Base
对(它是一个固定的接口类)进行任何更改。