[lesson49]多态的概念和意义

多态的概念和意义

函数重写回顾

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

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

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

    在这里插入图片描述

多态的概念和意义

  • 面向对象中期望的行为

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

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

    在这里插入图片描述

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

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

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

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

小结

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2980320.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

早些年间学Erupt

Erupt部署 创建一个SpringBoot项目(此处为2.7.10) 目录结构 demo -- 项目名称 ├── src└── main├── java -- 代码文件目录└── com.example.demo -- 包名└── DemoApplication -- 入口类└── resources -- 资源文件目录└── application.properties -- 配置…

”温江公平红烧兔“ 大声安利小众美食

”温江公平红烧兔“ 昨天正好送客户回温江(送了一筐樱桃,希望不太酸), 师傅跟我说,有好吃的兔子,先不急吃午饭。 本来天气晒 晕车,我想着肯定没胃口。 结果第一份凉粉上来,越吃胃…

UE4网络图片加载库(带内存缓存和磁盘缓存)

UE4网络图片加载库,带内存缓存和磁盘缓存,支持自定义缓存大小,支持蓝图和C++代码调用 1、调用示例 2、对外暴露函数 3、源代码-网络模块 KeImageNet.h // Fill out your copyright notice in the Description page of Project Settings.#pragma once#include "CoreM…

Linux:Win10平台上,用VMware安装Centos7.x及系统初始化关键的相关配置(分步骤操作,详细,一篇足以)

VMware安装Centos7.x镜像的详细步骤:VMWare安装Centos系统(无桌面模式) 我这里是为了安装Hadoop集群,所以,以下这些步骤是必须进行的 如果你是学习Linux,可以跳过非必须的那些配置项 我安装的版本是&…

Docker 基本认识

一 国内: 中国电信天翼云 提供包括云主机在内的全方位云计算服务,侧重于安全合规和企业级服务。 利用电信的网络优势,提供稳定可靠的基础设施服务。 中国联通沃云 提供包括云主机在内的多项云计算服务,适合不同行业和场景。 …

第五章关于路由过滤和路由策略实验

一.实验拓扑 二.根据网段配置IP地址 AR1: [Huawei]int G0/0/0 [Huawei-GigabitEthernet0/0/0]ip add 100.1.1.5 24 [Huawei-GigabitEthernet0/0/0]int L0 [Huawei-LoopBack0]ip add 192.168.0.1 32 [Huawei-LoopBack0]int L1 [Huawei-LoopBack1]ip add 192.168.1.1 32 三.按…

《HCIP-openEuler实验指导手册》1.4 Apache MPM工作模式调整

MPM介绍 二、配置步骤 查看MPM当前工作模式 方法一: httpd -M | grep mpm方法二: 浏览器访问:http://IP:端口/server-status 方法三: cat /etc/httpd/conf.modules.d/00-mpm.conf查看 LoadModule mpm_event_module modules/mo…

分保、等保、关保、密评之间联系与区别

分保、等保、关保、密评之间联系与区别 什么是“三保一评”分保等保关保密评 相关的法律法规依据分保等保关保密评 分保工作简介分保工作流程分级保护技术要求 等保工作简介等保系统定级等保工作流程等保2.0技术保护方案规划等保2.0网络安全设备配置建议等保2.0安全管理规划 关…

[Android]Jetpack Compose加载图标和图片

一、加载本地矢量图标 在 Android 开发中使用本地矢量图标是一种常见的做法,因为矢量图标(通常保存为 SVG 或 Android 的 XML vector format)具有可缩放性和较小的文件大小。 在 Jetpack Compose 中加载本地矢量图标可以使用内置的支持&…

关于C++STL的总结(基础使用和底层原理)

STL是什么? STL即(Standard Template Library)标准模板库,提供了常见的数据结构和算法函数等,其下共包含六大组件: 容器算法迭代器仿函数适配器空间配置器 本篇重点介绍容器的使用和简单的底层实现原理&…

二进制,八进制,十六进制 开头的标识符号

1、引言 每个进制开头的标识符号容易忘,写篇小小博客,拯救一下俺的小脑袋瓜子。 2、进制开头标识符号

AJAX——案例

1.商品分类 需求&#xff1a;尽可能同时展示所有商品分类到页面上 步骤&#xff1a; 获取所有的一级分类数据遍历id&#xff0c;创建获取二级分类请求合并所有二级分类Promise对象等待同时成功后&#xff0c;渲染页面 index.html代码 <!DOCTYPE html> <html lang&qu…

《QT实用小工具·三十八》QT炫酷的菜单控件

1、概述 源码放在文章末尾 非常飘逸的 Qt 菜单控件&#xff0c;带有各种动画效果&#xff0c;用起来也十分方便。 无限层级&#xff0c;响应键盘、鼠标单独操作&#xff0c;支持单快捷键。 允许添加自定义 widget、layout&#xff0c;当做特殊的 QDialog 使用。 项目demo演示…

你变了,再也不是我认识的微信小程序了!

以前做了不少的小程序&#xff0c;领导刚说要做的时候以为自己轻车熟路&#xff0c;多大点事&#xff0c;做了才发现近年来微信小程序改动还是挺多的&#xff01;不过第一感觉就是花钱的地方越来越多了&#xff01;接下来就帮大家整理一下我自己总结的有改动的地方&#xff0c;…

自动化软件测试策略

作为一名软件开发人员&#xff0c;我在不同的公司工作过&#xff0c;具有不同的软件测试流程。在大多数情况下&#xff0c;没有特定/记录的测试方法......因此该过程的内容/方式取决于各个开发人员。与大多数情况一样&#xff0c;当没有强制执行或至少记录在案的政策时&#xf…

使用立创EDA打开JSON格式的PCB及原理图

一、将PCB和原理图放同一文件夹 并打包成.zip文件 二、打开嘉立创EDA并导入.zip文件 文件 -> 导入 -> 嘉立创EDA标准版/专业版 三、选择.zip文件并选择 “导入文件并提取库” 四、自定义工程路径 完成导入并转换为.eprj文件 五、视频教学 bilibili_使用立创EDA打开JSO…

【保姆级教程】Windows 远程登录 Ubuntu桌面环境

前言 在Windows下远程访问Linux服务器的桌面&#xff0c;有几种常见的方法&#xff1a; xrdp&#xff08;X Remote Desktop Protocol&#xff09;&#xff1a;xrdp允许Windows使用RDP&#xff08;Remote Desktop Protocol&#xff09;来连接到Linux服务器的桌面。这种方式相对…

Jackson 2.x 系列【31】Spring Boot 集成之字典翻译

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Jackson 版本 2.17.0 本系列Spring Boot 版本 3.2.4 源码地址&#xff1a;https://gitee.com/pearl-organization/study-jaskson-demo 文章目录 1. 场景描述2. 案例演示2.1 修改枚举2.2 定义注解…

iptables实现docker容器动态端口映射实操

背景 之前在《Docker 动态修改容器端口映射的方法》一文中&#xff0c;说明了如何使用修改配置和加防火墙规则实现动态端口映射。但是没有具体分享加防火墙实现动态端口映射的实际案例。今天就分享一下实际操作案例&#xff0c;供大家参考。 分析 动态端口映射的用途 容器端口…

Python-GEE遥感云大数据分析、管理与可视化

原文链接&#xff1a;Python-GEE遥感云大数据分析、管理与可视化https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247601238&idx2&sn6b0557cf61451eaff65f025d648da869&chksmfa820db1cdf584a76de953b96519704177e6206d4ecd47a2f2fabbcac2f7ea619b0bce184…