当前位置: 首页 > news >正文

【C++学习】6、继承

1、什么是继承?

继承描述的是类与类之间的关系,A类继承B类,A类就拥有B类的数据和方法。

继承的方式:

公有继承(public)

保护继承(protected)

私有继承(private)

2、继承中构造和析构的顺序

子类无法继承父类的函数:构造函数、析构函数、重载=运算符

3、子类必须通过初始化列表调用父类的有参构造

调用成员或父类的有参构造,必须使用初始化列表

4、继承中的同名处理

处理方法:加作用域是最安全、最方便的处理方式

1、继承的同名数据子类中优先选择子类同名数据

2、继承的同名函数

        子类重新定义了父类的同名函数,将屏蔽父类的所有同名函数。

class Base
{
public:int a;
public:Base(int a):a(a){}void func(int x){cout<<"父类的func int"<<endl;}void func(int x,int y){cout<<"父类的func int int"<<endl;}};class Son:public Base
{
public:int a;
public:Son(int x, int y):Base(x),a(y){}//子类重新定义了 父类的func函数 将屏蔽父类的所有同名函数void func(int x,int y,int z){cout<<"子类 func int int int"<<endl;}
};
void test01()
{Son ob1(10,20);ob1.func(10);//errob1.func(10,20);//err
}

        如果子类非要用父类的同名函数,需要加作用域

3、重定义:有继承,子类重新定义父类的重名函数,只要函数名相同即可。

5、多继承:子类有多个父类

http://www.lryc.cn/news/411774.html

相关文章:

  • 从零开始的MicroPython(三) 按键与外部中断
  • Windows下编译安装Kratos
  • 汽车-腾讯2023笔试(codefun2000)
  • 软测面试二十问(最新面试)
  • 风吸杀虫灯采用新型技术 无公害诱虫捕虫
  • 随手记录第十二话 -- JDK8-21版本的新增特性记录(Lambda,var,switch,instanceof,record,virtual虚拟线程等)
  • SpringCloud网关 SpringBoot服务 HTTP/HTTPS路由/监听双支持
  • JavaScript做网页是否过期的处理
  • python coding时遇到的问题
  • 攻防演练号角吹响,聚铭铭察高级威胁检测系统助您零失分打赢重保攻坚战
  • 个人量化交易兴起!有什么好用的量化软件推荐?迅投QMT量化平台简介!
  • SQL labs-SQL注入(七,sqlmap对于post传参方式的注入,2)
  • SAM 2: Segment Anything in Images and Videos
  • 软件测试面试,如何自我介绍?
  • 力扣第四十七题——全排列II
  • Springer旗下中科院2区TOP,国人优势大!
  • 【C++】C++入门知识详解(下)
  • 分压电阻方式的ADC电压校准
  • 使用Postman测试API短轮询机制:深入指南
  • 明清进士人数数据
  • C# 串口通信(通过serialPort控件发送及接收数据)
  • 数据安全的新盾牌:SQL Server数据库镜像技术详解
  • 【C语言版】数据结构教程(一)绪论(上)
  • 酒后为什么总感觉渴?
  • Docker安装OwnCloud私有云盘对接ceph
  • 创建了Vue项目,需要导入什么插件以及怎么导入
  • abstract 关键字
  • 用Python编写你的网络监控系统详解
  • 操作系统——虚拟内存
  • Zoom视频会议软件使用