C++ 如果抽象类中有一个常量变量,那么继承的类是否会获得一个实例或指向基类常量的指针?

C++ 如果抽象类中有一个常量变量,那么继承的类是否会获得一个实例或指向基类常量的指针?,c++,inheritance,constants,abstract,C++,Inheritance,Constants,Abstract,我只是一直很好奇。在后台,继承的类会发生什么情况?与继承一个非const变量或从一个具体类继承相比,您为什么期望行为会发生变化?基类实例包含在派生类实例中,因此派生实例不会真正“获取”任何你想象得到的东西(既不涉及复制也不涉及间接寻址)。派生类是其基类的类型,因此它们可以访问其所有(非私有)父基类成员。编译器知道Derived::static\u base\u var与base::static\u base\u var是同一个变量。要清楚,您是询问static const成员还是非staticc

我只是一直很好奇。在后台,继承的类会发生什么情况?

与继承一个非
const
变量或从一个具体类继承相比,您为什么期望行为会发生变化?基类实例包含在派生类实例中,因此派生实例不会真正“获取”任何你想象得到的东西(既不涉及复制也不涉及间接寻址)。派生类是其基类的类型,因此它们可以访问其所有(非私有)父基类成员。编译器知道
Derived::static\u base\u var
base::static\u base\u var
是同一个变量。要清楚,您是询问
static const
成员还是非static
const
成员?const变量的使用方式也会影响编译器生成的内容。例如,如果丢弃常量并修改值,编译器将为变量保留内存。编译器也可能决定内联const值,而根本不在内存中生成变量。