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
    
    
  • 相关阅读:
    如何将网格式报表打印成其它样式
    拥有与实力不相称的脾气是种灾难——北漂18年(23)
    8.8.1 Optimizing Queries with EXPLAIN
    mysql 没有rowid 怎么实现根据rowid回表呢?
    secondary index
    8.5.5 Bulk Data Loading for InnoDB Tables 批量数据加载
    mysql 中key 指的是索引
    8.5.4 Optimizing InnoDB Redo Logging 优化InnoDB Redo 日志
    8.5.3 Optimizing InnoDB Read-Only Transactions 优化InnoDB 只读事务
    8.5.1 Optimizing Storage Layout for InnoDB Tables InnoDB表的存储布局优化
  • 原文地址:https://www.cnblogs.com/penuel/p/13150623.html
Copyright © 2011-2022 走看看