关于c++中的继承

About Inheritance in c++

本文关键字:继承 c++ 关于      更新时间:2023-10-16

如果一个类是在公共模式下继承的,那么基类的公共成员和受保护成员将进入派生类的公共和受保护部分。我的问题是:如果派生类中没有受保护的节,会发生什么?

什么都不会"发生"。该类除了其基成员之外,不会有其他protected成员。

如果不编写protected:,并不意味着该类不能拥有[继承的]protected成员,也不意味着它没有"受保护的节"。语法和语义并没有那么紧密地结合在一起。

使用公共继承,派生类的定义中是否根本没有受保护的节,或者它是空的都无关紧要。基类的受保护成员无论如何都会继承并保持受保护状态。对于public也是如此,即使派生类的定义中没有public节。

calss定义中的public:/protected:/private:并不是真正的"节",它们只是为跟随它们的成员标记成员访问权限的语法,直到下一个public:/protected:/private:,并且您可以按任何顺序拥有任何数量的此类"节"。