c++ - 是否可以从派生类向基类 A 添加类成员?

标签 c++ class inheritance polymorphism

出于好奇,我只是在考虑它并想知道它是否完全可能,因为我认为它会非常有用。 (但无论如何我的大部分想法都是疯狂的/疯狂的)。

就是这样:

是否可以创建类 A 和类 B,然后使用类 B 向类 A 添加成员?

假设我们正在制作一个游戏,或者一些程序,这在其中很有用:

class Player
{
    public:
    float health;
};

现在,您想到了一种通过使用包含文件或其他方式允许扩展的方法:

#define INCLUDE_SPEEDO_METER
#ifdef INCLUDE_SPEEDO_METER
class PlayerSpeedo : public Player
{
    public:
    float absolute_speed;
    //Do some Magic here & there
};
#endif

现在假设我们想要从 Player 类(如 Player.absolute_speed)访问玩家的绝对速度。

这有可能吗?

最佳答案

不,那是不可能的。您不能将成员“注入(inject)”到另一个类中。坦率地说,我不明白你为什么会想要。除了您之外,没有人会知道这个“注入(inject)的”成员。

关于c++ - 是否可以从派生类向基类 A 添加类成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26367931/

相关文章:

c++ - 为什么 C++ 将此视为不明确的函数引用

c++ - 需要帮助来理解 "ABA"问题

java - 使用构造函数参数实例化泛型类型?

c++ - const char* 和 char const* - 它们是一样的吗?

c++ - 在 C++ 中用类型为 'double' 的乘数将复数对象与实部和虚部相乘

javascript - 按类获取元素并在新选项卡中打开

java - 我可以使用原始类作为类型并仍然使用它的子类吗?

c++ - 为什么CRTP不会造成无限嵌套?

c# - 错误 : The service System. Windows.Forms.Design.IEventHandlerService 已存在于服务容器中

c++ - 从另一个类c++中的构造函数调用方法