首页 > 解决方案 > 子对象、包含对象、成员对象:差异?

问题描述

自从我用 C++ 编码以来已经快 2 年了,在我看来,术语已经改变了。我一直在网上搜索,看看主题行中三个术语的含义是否真的有任何区别,但没有发现任何区别。然而,我也没有发现它们的意思相同的证据。

如果我没记错的话,我们使用“成员对象”来引用属性,无论它是在基类还是派生类中声明。这些天来,似乎人们也将其称为“包含对象”和“子对象”。它们实际上是等价的吗?

我能找到的最相关的线程是Difference between sub-object and contains object。但是,它讨论了对象的派生,我仍然不清楚。类是派生的,而对象是实例化的。一些进一步的搜索表明这是实例化派生类的简写,但我在线程上足够模糊,我认为它不能清楚地回答这里提出的问题。它可以做一个更直接的答案。

谢谢。

标签: c++

解决方案


根据评论,所有三个术语似乎都指的是同一件事,“成员对象”是正式术语。在基类或派生类中声明成员对象似乎没有区别。此外,“基类”指的是任何祖先类,而“派生”类指的是任何后代类。


推荐阅读