这种说法是否成立:所有C ++类都隐式地从Object类继承?对于python来说似乎是这样。
答案 0 :(得分:2)
不,绝对不是:与Java或C#(.NET)不同,C ++中的类没有公共根。
注意:这不适用于C ++ / CLI;然而,它是一种不同的语言,其语法松散地基于C ++,因此“真正的”C ++没有“根”对象。
答案 1 :(得分:2)
没有。 Java有一个名为Object的根类。 C ++没有。
C ++类被设计为尽可能轻量级。早期设计C ++背后的哲学是如果你不使用它,你就不必付钱。一个有趣的共同基类需要一些成本,即使对那些不使用它的人也要进行评估。
答案 2 :(得分:2)
不,C ++中没有这样的根类,因为它不是面向对象的强类。
向后兼容“C”。像一些“类对象”这样的根类会使C ++对象的内存模型在“C”世界中不兼容。
另一方面,如果你使用的是用C ++开发的一些框架,它们可能有一个共同的根类。
例如:MFC中的CObject或QT中的QObject。
答案 3 :(得分:0)
不,C ++中没有像Object
这样的根类。但在Java中确实如此。
答案 4 :(得分:0)
不存在名为Object的基类。
答案 5 :(得分:0)
关于Java,而不是C ++,这是事实。通用Object类的替代方法是void指针。