c++ 三大特性之继承

在未涉及继承概念时, protected和 private 在类内的作用是等价的,都是保护对应的成员(变量或者函数)不被类的实例化对象所访问,仅仅可以在类内进行访问。
只有public下的内容可以被对象访问
 
公有继承public:
子类(派生类B)& 父类(基类A),形式 calss B : public A
 
基类中的public内容可以被继承进派生类,仍为public,在派生类内访问且可以被派生类的对象访问
基类中的protected内容可以被继承进派生类中,仍为protected,可以被派生类在类内访问,但是派生类的对象不能访问
基类中的private内容不可以被继承进派生类,只能在基类中私有访问
 
保护继承protected:
子类(派生类B)& 父类(基类A),形式 calss B : protected A
 
基类中的public内容可以被继承进派生类,为protected,在派生类内访问,派生类对象不能访问
基类中的protected内容可以被继承进派生类中,仍为protected,可以被派生类在类内访问,但是派生类的对象不能访问
基类中的private内容不可以被继承进派生类,只能在基类中私有访问
 
私有继承private:
子类(派生类B)& 父类(基类A),形式 calss B : private A
基类中的public内容可以被继承进派生类,为private,在派生类内访问,派生类对象不能访问
基类中的protected内容可以被继承进派生类中,为private,可以被派生类在类内访问,但是派生类的对象不能访问
基类中的private内容不可以被继承进派生类,只能在基类中私有访问
 
个人觉得:私有继承和保护继承,主要用于多级的继承中,保护基类成员的内容
 
 
原文地址:https://www.cnblogs.com/zhang716921/p/10597653.html