day08.C++继承与派生

继承(Inheritance)可理解为一个类从另一个类获取成员变量和成员函数的过程。例如类 B 继承于类 A,那么 B 就拥有 A 的成员变量和成员函数。
在C++中,
 派生(Derive) 和继承是一个概念,只是站的角度不同。继承是儿子接收父亲的产业,派生是父亲把产业传承给儿子。

被继承的类称为父类或基类,继承的类称为子类或派生类。“子类”和“父类”通常放在一起称呼,“基类”和“派生类”通常放在一起称呼。

一.继承

1.1继承的定义

继承的一般语法为:

class 派生类名:[继承方式] 基类名{
    派生类新增加的成员
};

继承方式包括 public(公有的)、private(私有的)和 protected(受保护的),此项是可选的,如果不写,那么默认为 private。


//基类Father
class Father{
private:int a;void f1(){}
protected:int b;void f2(){}
public:int c;void f3(){}
};
//派生类Son
class Son:public Father{
protected:double e;void f4(){}
public:double g;void f5(){}
};
int main(){Son s;s.c=9;s.f3();s.g=10;s.f5();return 0;
}

Father 是基类,Son是派生类。Son类继承了 Father 类的成员a,b ,c ,f1,f2,f3,同时还新增了自己的成员变量 s,e 和成员函数 f4,f5 。这些继承过来的成员,可以通过子类对象访问,就像自己的一样。

1.2继承的三种方式

类成员的访问权限由高到低依次为 public --> protected --> private

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/686960.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于蓄电池和飞轮混合储能系统的SIMULINK建模与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1 蓄电池储能原理 4.2 飞轮储能原理 4.3 混合储能系统原理 5.完整工程文件 1.课题概述 基于蓄电池和飞轮混合储能系统的SIMULINK建模与仿真。蓄电池和飞轮混合储能,蓄电池可以用SIMULINK…

hook函数——useMemo

useMemo 1.useMemo定义 useMemo 是一个 React Hook,它在每次重新渲染的时候能够缓存计算的结果。 const 变量名 useMemo(calculateValue, dependencies) calculateValue:要缓存计算值的函数。它应该是一个没有任何参数的纯函数,并且可以返…

整合ssm框架的步骤

SSM整合框架是指SpringSpringMVCMyBatis的整合框架。 Spring是一个轻量级的Java开发框架,提供了控制反转(IoC)和面向切面编程(AOP)等功能,可以管理和组织Java应用程序中的各个组件。SpringMVC是基于Spring…

Vuex核心知识整理

目录 1 搭建vuex环境 2 求和案例 3 getters 配置项 4 mapState 和 mapGetters 5 mapMutations 和 mapActions 6 Vuex 模块化 1 搭建vuex环境 vuex工作原理图(摘自官网) 什么时候使用Vuex: 1.当多个组件依赖于统一状态 2.来自不同组件…

第三百五十一回

文章目录 1. 概念介绍2. 获取方法3. 示例代码4. 对比与总结4.1 横向对比4.2 内容总结 我们在上一章回中介绍了"如何获取当前系统语言"相关的内容,本章回中将介绍获取当前时区.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 我们使用的北京…

解决:docker创建Redis容器成功,但无法启动Redis容器、也无报错提示

解决:docker创建Redis容器成功,但无法启动Redis容器、也无报错提示 一问题描述:1.docker若是直接简单使用run命令,但不挂载容器数据卷等参数,则可以启动Redis容器2.docker复杂使用run命令,使用指定redis.co…

Kubernetes实战:Kubernetes中网络插件calico Daemon Sets显示异常红色

目录 一、排查步骤与解决方案1.1、POD排查问题定位1.2、针对问题解决错误1.3、继续针对问题解决错误 一、排查步骤与解决方案 1.1、POD排查问题定位 我的k8s集群由3个节点组成的,calico在每个节点上都有一个pod,通过kubectl get pod -A命令发现有一个pod的READY 为…

CVE-2022-24652 漏洞复现

CVE-2022-24652 开题 后台管理是thinkphp的,但是工具没检测出漏洞。 登陆后界面如下,上传头像功能值得引起注意 这其实就是CVE-2022-24652,危险类型文件的不加限制上传,是文件上传漏洞。漏洞路由/user/upload/upload 参考文章&a…

web 发展阶段 -- 详解

1. web 发展阶段 当前处于 移动 web 应用阶段。也是个风口(当然是针对有能力创业的人来说的),如 抖音、快手就是这个时代的产物。 2. web 发展阶段引出前后端分离的过程 2.1 传统开发方式 2.2 前后端分离模式 衍生自移动 web 应用阶段。 3.…

YOLOv8改进 | Neck篇 | 当SDI碰上BiFPN形成全新的特征金字塔网络(全网独家创新)

一、本文介绍 本文给大家带来的改进机制是利用多层次特征融合模块(SDI)配上经典的加权双向特征金字塔网络Bi-FPN形成一种全新的Neck网络结构,从而达到二次创新的效果,其中(SDI)模块的主要思想是通过整合编码器生成的层级特征图来增强图像中的语义信息和细节信息。Bi-FPN…

VMwareWorkstation17.0虚拟机安装搭建Windows 11虚拟机(完整图文详细步骤教程)

VMwareWorkstation17.0虚拟机安装搭建Windows 11虚拟机(完整图文详细步骤教程) 一、下载Windows11二、配置Windows11虚拟机机器环境三、启动Windows11系统 一、下载Windows11 【点击打开最全面的Windows 11原版系统镜像下载地址】 https://blog.csdn.ne…

463. Island Perimeter(岛屿的周长)

问题描述 给定一个 row x col 的二维网格地图 grid ,其中:grid[i][j] 1 表示陆地, grid[i][j] 0 表示水域。 网格中的格子 水平和垂直 方向相连(对角线方向不相连)。整个网格被水完全包围,但其中恰好有…

MySQL数据表的约束

已经一个星期没更了,因为过年嘛,比较忙,我玩心也大,就没继续更新,在这里给大家道歉,也祝大家新的一年快快乐乐,新年快乐。 为防止数据表中插入错误的数据,MySQL定义了一些规则维护数…

人工智能专题:2024亚太地区生成式人工智能应用与监管报告

今天分享的是人工智能系列深度研究报告:《人工智能专题:2024亚太地区生成式人工智能应用与监管报告》。 (报告出品方:德勤) 报告共计:20页 来源:人工智能学派 知识更新:了解传统…

代码随想录算法训练营第32天| 122.买卖股票的最佳时机 II、55. 跳跃游戏、45.跳跃游戏 II

文章目录 Leetcode 122.买卖股票的最佳时机 IILeetcode 55. 跳跃游戏Leetcode 45.跳跃游戏 II Leetcode 122.买卖股票的最佳时机 II 题目链接:Leetcode 122.买卖股票的最佳时机 II 题目描述: 给定一个数组,它的第 i个元素是一支给定股票第i天…

【笔记】Helm-5 Chart模板指南-13 调试模板

调试模板 调试模板可能很棘手,因为渲染后的模板发送了kubernetes API server,可能会以格式化以外的原因拒绝YAML文件。 以下命令有助于调试: 1、helm lint 是验证chart是否遵循最佳实践的首选工具。 2、helm template --debug在本地测试渲…

IP地址+子网掩码+CIDR学习笔记

目录 一、IP地址 1、表示方法: 2、特殊IP地址 二、子网掩码 1、判断网络位和主机位 2、子网划分 三、无分类编址CIDR 1、CIDR路由汇聚 汇聚规则: 汇聚ID: 2、最佳路由匹配原则 一、IP地址 1、表示方法: 机器中存放的…

(免费领源码)java#springboot#mysql医院自助服务系统74853-计算机毕业设计项目选题推荐

目 录 摘要 1 绪论 1.1研究意义 1.2研究背景 1.3springboot框架介绍 1.3论文结构与章节安排 2 医院自助服务系统系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据流程 3.3.2 业务流程 2.3 系统功能分析 2.3.1 功能性分析 2.3.2 非功能性分析 2.4 系统用例分…

JWT登录验证前后端设计与实现笔记

设计内容 前端 配置全局前置路由守卫axios拦截器登录页面和主页 后端 JWT的封装登录接口中间件放行mysql数据库的连接 详细设计 路由设计 配置全局前置守卫,如果访问的是登录页面则放行,不是则进入判断是否有token,没有则拦截回到登录…

《Go 简易速速上手小册》第10章:微服务与云原生应用(2024 最新版)

文章目录 10.1 构建微服务架构 - 探索 Go 语言的微观世界10.1.1 基础知识讲解10.1.2 重点案例:订单处理系统订单服务测试服务 10.1.3 拓展案例 1:用户认证服务安装所需的包实现用户模型和存储实现 JWT 生成和验证实现认证服务测试服务 10.1.4 拓展案例 2…