zoukankan      html  css  js  c++  java
  • pure virtual、impure virtual、non-virtual函数的接口继承和实现继承

    1。abstract class

    拥有pure virtual函数的class是abstract class. 不能创建abstract class的实体。

    2.pure virtual 函数

    他们必须被任何“继承了它们”的具象class重新声明,而且它们在抽象class中通常没有定义。(所有的derived class必须重新声明base class的pure virtual函数)

    声明一个pure virtual函数的目的是为了让derived classes只继承函数接口。

    3.impure virtual函数

    声明一个impure virtual函数的目的是为了让derived classes继承函数接口和缺省实现。(derived class支持某个函数,可以自己写,也可以使用base class的缺省版本,但是不能同时自己指定函数声明和缺省版本)

    4.non-virtual函数

    non-virtual函数意味着它不打算在derived class中有不同的行为。(non-virtual函数绝对不应该在derived class中被重新定义)

    声明一个non-virtual函数的目的是为了让derived class继承函数的接口以及一份强制性实现。

    基类成员函数 接口继承和实现继承
    pure virtual   只具体指定接口继承
    impure virtual 具体制定接口继承和缺省实现继承
    non-virtual   具体制定接口继承和强制性实现继承
  • 相关阅读:
    EL表达式
    使用Cookie保存用户信息
    GUI学习之二——PyQt控件初识
    GUI学习之一——PyQt5初识
    HTML学习总结
    centos7 mysql的安装与配置
    Python之RabbitMQ的使用
    python之模块的导入
    Python之ftp服务器
    GUI学习之〇——PyQt5安装
  • 原文地址:https://www.cnblogs.com/qiushuixiaozhanshi/p/5713502.html
Copyright © 2011-2022 走看看