zoukankan      html  css  js  c++  java
  • C++继承和派生

    1.继承和派生:

    • 继承和派生是同一个过程从不同角的度看

    • 保持已有类的特性而构造新类的过程称为继承。

    • 在已有类的基础上新增自己的特性而产生新类的过程称为派生。

    • 被继承的已有类称为基类(或父类)。

    • 派生出的新类称为派生类(或子类)。

    • 直接参与派生出某类的基类称为直接基类。

    • 基类的基类甚至更高层的基类称为间接基类。

    2.使用语法:

    • 单继承:
               派生类名 继承方式  基类名
          class derived: public base
          {
          }
    
    • 多基层:
               派生类名 继承方式  基类名,继承方式  基类名
          class derived: public base1,private base2
          {
          }
    

    3.继承方式:

    • 公有继承
    • 私有继承
    • 保护继承
    1. 公有继承:
    • 派生类中的成员函数:可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员;

    • 通过派生类的对象:只能访问public成员。

    1. 私有继承
    • 派生类中的成员函数:可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员;

    • 通过派生类的对象:不能直接访问从基类继承的任何成员。

    1. 保护继承
    • 派生类中的成员函数:可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员;

    • 通过派生类的对象:不能直接访问从基类继承的任何成员

    //公有继承                      对象访问    成员访问
    
    public    -->  public              Y         Y
    
    protected -->  protected           N         Y
    
    private   -->  private             N         N
    
     
    
    //保护继承                      对象访问    成员访问
    
    public    -->  protected           N         Y
    
    protected -->  protected           N         Y
    
    private   -->  protected           N         N
    
     
    
    //私有继承                      对象访问    成员访问
    
    public    -->  private             N         Y
    
    protected -->  private             N         Y
    
    private   -->  private             N         N
    
    
  • 相关阅读:
    bzoj 4010: [HNOI2015]菜肴制作
    bzoj4827: [Hnoi2017]礼物
    bzoj3160: 万径人踪灭
    bzoj4503: 两个串
    bzoj2648: SJY摆棋子
    bzoj2780: [Spoj]8093 Sevenk Love Oimaster
    bzoj3926: [Zjoi2015]诸神眷顾的幻想乡
    MySQL:记录的增删改查、单表查询、约束条件、多表查询、连表、子查询、pymysql模块、MySQL内置功能
    MySQL数据库:SQL语句基础、库操作、表操作、数据类型、约束条件、表之间的关系
    网络编程进阶:并发编程之协程、IO模型
  • 原文地址:https://www.cnblogs.com/penuel/p/13150623.html
Copyright © 2011-2022 走看看