0
点赞
收藏
分享

微信扫一扫

本地部署Docker容器可视化图形管理工具DockerUI并实现无公网IP远程访问——“cpolar内网穿透”

mafa1993 2024-04-23 阅读 6
c++

多态的概念和意义

函数重写回顾

  • 父类中被重写的函数依然会继承给子类

  • 子类中重写的函数将覆盖父类中的函数

  • 通过作用域分辨符(::)访问父类中的同名成员

    在这里插入图片描述

多态的概念和意义

  • 面向对象中期望的行为

    • 根据实际的对象类型判断如何调用重写函数
    • 父类指针(引用)指向
      • 父类对象则调用父类中定义的函数
      • 子类对象则调用子类中定义的重写函数
  • 面向对象中的多态的概念

    • 根据实际的对象类型决定函数调用的具体目标
    • 同样的调用语句在实际运行时有多种不同的表现形态

    在这里插入图片描述

  • C++语言直接支持多态的概念

    • 通过使用virtual关键字对多态进行支持
    • virtual声明的函数被重写后具有多态特性
    • virtual声明的函数叫做虚函数
  • 多态的意义

    • 在程序运行过程中展现出动态的特性
    • 函数重写必须多态实现,否则没有意义
    • 多态是面向对象组件化程序设计的基础特性
  • 理论中的概念

    • 静态联编
      • 在程序的编译期间就能确定具体的函数调用
        • 如:函数重载
    • 动态联编
      • 在程序实际运行后才能确定具体的函数调用
        • 如:函数重写

小结

  • 函数重写只可能发生在父类子类之间
  • 根据实际对象的类型确定调用的具体函数
  • virtual关键字是C++中支持多态的唯一方式
  • 被重写的虚函数可表现出多态的特性
举报

相关推荐

0 条评论