继承 基类与派生类

继承与派生的概念

继承的概念

![[Pasted image 20231225161957.png]]

派生类

  • 不能访问基类中的private成员
    ![[Pasted image 20231225162525.png]]

目的

![[Pasted image 20231225162600.png]]

继承与复合关系

类与类的关系

![[Pasted image 20231225160433.png]]

  • 继承:是
    • 基类,派生
  • 复合:有

覆盖和保护成员

覆盖

![[Pasted image 20231225165054.png]]
一般来说,基类和派生类不定义同名成员变量

类的保护成员

protected

![[2023-12-26 220018.png]]

派生类的构造函数

创造派生类的对象是,需要调用基类的构造函数

调用的两种方式

  • 显性
derived::derived(arg_derived-list):base(arg_base-list)
  • 隐性
    在派生类的构造函数中省略基类的构造函数时,自动调用基类的默认构造函数

派生类中访问静态成员

![[Pasted image 20231225165248.png]]
![[Pasted image 20231225165427.png]]

访问控制

![[Pasted image 20231225163736.png]]

public 继承的复制兼容规则

class base{ };
class derived:public base{};
base b;
derived d;
  • b=d
  • base & br=d
  • base * pb=d
posted @ 2024-04-18 12:34  study_all_day  阅读(15)  评论(0)    收藏  举报