继承方式

有以下三种继承方式:

  • 公共继承public
  • 保护继承protected
  • 私有继承private

继承之后访问权限如下:

类名/属性 int a int b int c
父类A public protected private
B:public A public protected 不可访问
C:protected A protected protected 不可访问
D:private A private private 不可访问

父类的私有属性,子类继承之后均不可以访问

#include<iostream>
using namespace std;class Base1
{public:int mA;
protected:int mB;
private:int mC;
};//公有继承
class Son1 :public Base1
{public:void func() {mA = 10;//父类中的公共权限成员 到子类中依然是公共权限mB = 10;//父类中的保护权限成员 到子类中依然是保护权限//mC = 100;//错误,父类中的私有权限成员,子类不能访问}
};void test01() {Son1 s1;s1.mA = 100;//类外可以访问公有权限//s1.mB = 100;//错误,类外不能访问保护权限
}//保护继承
class Base2
{public:int mA;
protected:int mB;
private:int mC;
};class Son2 :protected Base2
{public:void func() {mA = 100;//父类中的公共权限成员 到子类中变为保护权限mB = 100;//父类中的保护权限成员 到子类中变为保护权限//mC = 100;//错误,父类中的私有权限成员,子类不能访问}
};void test02() {Son2 s2;//s2.mA = 100;//错误,在Son2中mA变为保护权限,类外不能访问//s1.mB = 100;//错误,类外不能访问保护权限
}//私有继承
class Base3
{public:int mA;
protected:int mB;
private:int mC;
};class Son3 :private Base3
{public:void func() {mA = 100;//父类中的公共权限成员 到子类中变为私有权限mB = 100;//父类中的保护权限成员 到子类中变为私有权限//mC = 100;//错误,父类中的私有权限成员,子类不能访问}
};class GrandSon3 :public Son3//公共继承
{//mA = 100;//错误,到了Son3中,mA变为私有成员,父类中的私有权限成员,子类不能访问//mB = 100;//错误,到了Son3中,mB变为私有成员,父类中的私有权限成员,子类不能访问
};void test03() {Son3 s3;//s3.mA = 100;//错误,在Son2中mA变为私有权限,类外不能访问//s3.mB = 100;//错误,在Son2中mB变为私有权限,类外不能访问
}int main() {system("pause");return 0;
}

【b站黑马程序员C++视频学习笔记-继承方式】相关推荐

  1. 【b站黑马程序员C++视频学习笔记-多态案例三-电脑组装】

    多态案例三-电脑组装 电脑主要组成部件为CPU(用于计算),显卡(用于显示),内存条(用于存储).把每个零件封装出抽象父类,并且提供不同的厂商生产不同的零件,例如Intel厂商和Lenovo厂商.创建 ...

  2. 【b站黑马程序员C++视频学习笔记-多态案例二-制作饮品】

    多态案例二-制作饮品 利用多态实现制作咖啡和茶水 Coffee和Tea继承了抽象类AbstractDrinking,并重写了AbstractDrinking的抽象函数 #include<iost ...

  3. 尚硅谷+黑马程序员MongoDB视频学习笔记(一)

    本学习笔记是来源于学习B站上的尚硅谷和黑马的MongoDB教学视频而做的知识总结. 一.数据库(Database) 数据库是按照数据结构来组织.存在和管理数据的仓库.说白了,数据库就是存在数据的仓库. ...

  4. 黑马程序员 c++视频学习详细笔记 下载地址

    黑马程序员 c++视频学习详细笔记 下载地址: https://download.csdn.net/download/m0_47891203/84348174 建议结合博主博文学习

  5. 黑马程序员Java教程学习笔记(五)

    学习视频:https://www.bilibili.com/video/BV1Cv411372m 如侵权,请私信联系本人删除 文章目录 黑马程序员Java教程学习笔记(五) 日期时间:Date.Sim ...

  6. 黑马程序员Java教程学习笔记(三)

    学习视频:https://www.bilibili.com/video/BV1Cv411372m 如侵权,请私信联系本人删除 文章目录 黑马程序员Java教程学习笔记(三) 面向对象:设计对象.注意事 ...

  7. 黑马程序员_java自学学习笔记(八)----网络编程

    黑马程序员_java自学学习笔记(八)----网络编程 android培训. java培训.期待与您交流! 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无 ...

  8. 【黑马程序员新版Linux学习笔记】Linux系统实用操作命令——操作演示

    [黑马程序员新版Linux学习笔记]Linux 零基础快速入门: (一)Linux基本命令--操作演示 (二)Linux用户和权限 -- 操作演示 (三)Linux 小技巧快捷键 (四)Linux系统 ...

  9. 黑马程序员机器学习Day2学习笔记

    一.转换器和预估器 二. KNN算法 网格搜索和交叉验证 KNN案例:Facebook预测签到位置 朴素贝叶斯 联合概率.条件概率与相互独立 决策树 信息熵 回顾传统机器学习算法流程: 1.获取数据 ...

最新文章

  1. Microsoft Security Essentials 4.1.522.0 RTM
  2. 华为深度学习新模型DeepShift:移位和求反代替乘法,成本大降
  3. 创建oracle dblink权限不足,Oracle-存储过程-创建sequence的时候报权限不足
  4. 3.5 将 Batch 拟合进神经网络-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授
  5. java中容易被忽视的基本概念
  6. 4399小游戏flash插件怎么下载_Flash即将关闭,但这个小游戏平台,或许可以帮你找回4399的回忆...
  7. 读取.Properties配置文件
  8. 如何学习Web前端知识转型?
  9. python关机怎样保存seek_在Python中操作文件之seek()方法的使用教程
  10. 【优化算法】气味代理优化算法(SAO)【含Matlab源码 1131期】
  11. (附源码)计算机毕业设计ssm 航空订票系统
  12. python代码去马赛克,Python黑科技神奇去除马赛克
  13. 使用Fiddler抓取websocket包-Android
  14. drawio二次开发
  15. TensorFlow2.0教程-文本分类
  16. javascript如何获取html中的控件,Javascript-dom总结(获取页面控件)
  17. pixiv的服务器信息,Pixiver™
  18. 2023年有哪些值得推荐的蓝牙耳机?小米|南卡|JBL等等高性价比蓝牙耳机推荐
  19. 理论力学知识要点归纳(一)
  20. java audit模块实现_Linux安全审计功能的实现——audit详解

热门文章

  1. Java语言开发在线音乐推荐网 音乐推荐系统 网易云音乐爬虫 基于用户、物品的协同过滤推荐算法 SSM(Spring+SpringMVC+Mybatis)框架 大数据、人工智能、机器学习项目开发
  2. JavaScript “佛祖保佑 永无bug”
  3. 《未来简史(下)》万维钢解读
  4. 游戏脚本在移动游戏设计中的作用_游戏可以在教育中起到哪些正面的作用?
  5. Android仿淘宝京东商品规格参数颜色筛选
  6. java 给图片添加水印文字
  7. 【​观察】 娃娃也能编程?微软“编程一小时”让你家娃也能变身编程达人
  8. 关于Java事务原理的探讨
  9. 分享几个关于UG装配的小问题,干货满满!!!
  10. 英语语法构词篇-派生(Derivation)