C++继承方式区别

公有继承(public)

基类的publicprotected成员的访问属性在派生类中保持不变,但基类的private成员不可直接访问。

l       派生类中的成员函数可以直接访问基类中的publicprotected成员,但不能直接访问基类的private成员。

l       通过派生类的对象只能访问基类的public成员。

 

私有继承(private)

l       基类的publicprotected成员都以private身份出现在派生类中,但基类的private成员不可直接访问。

l       派生类中的成员函数可以直接访问基类中的publicprotected成员,但不能直接访问基类的private成员。

l       通过派生类的对象不能直接访问基类中的任何成员。

 

保护继承(protected)

 

l       基类的publicprotected成员都以protected身份出现在派生类中,但基类的private成员不可直接访问。

l       派生类中的成员函数可以直接访问基类中的publicprotected成员,但不能直接访问基类的private成员。

l       通过派生类的对象不能直接访问基类中的任何成员

 

 

你可能感兴趣的:(C++继承方式区别)