class A {
public: int pba;
protected: int pta;
private: int pva;
};
class B : (继承种类) A {
private: int pvb;
};
class C : B {};
int main() {}
继承种类有公有继承、保护继承、私有继承
三种继承方式的不同之处就是B中的前12个字节(pba、pta、pva)在派生类(class C)和外部函数(main)中的访问权限不同,
但对B而言三种继承方式都一样,B都能访问A中的public和protected,不能访问private
三种继承种类public、protected、private,都是把B包含的基类成员(pba、pta、pva)的访问权限下降到不大于继承种类的访问权限
(即protected继承则把public降为protected,private继承则把public和protected降为private)
虽然我只列出了成员变量(pba、pta、pva),但实际上成员函数也是遵循同样的规则。