第四十五课 不同的继承方式
【[toc]
一、C++ 继承方式
-
public 继承
父类成员在子类中保持原有访问级别
-
private 继承
父类成员在子类中变为私有成员
-
protected 继承
父类中的共有成员变为保护成员,其他成员保持不变
public | protected | private | |
---|---|---|---|
public | public | protected | private |
protected | protected | protected | private |
private | private | private | private |
横向为父类访问级别
竖向为继承方式
继承成员的访问属性=Max{继承方式,父类成员访问属性}
C++ 中的默认继承方式为 private
二、继承规则
- 一般而言,C++ 工程项目中只使用 public 继承
- C++ 的派生语言只支持一种继承方式(public 继承)
- protected 和 private 继承带来的复杂性远大于实用性
三、小结
- C++ 支持 3 种不同的继承方式
- 继承方式直接影响父类成员在子类中的访问属性
- 一般而言,工程中只使用 public继承方式
- C++ 的派生语言中只支持 public 继承方式