C++作业6

以下是一个简单的比喻,将多态概念与生活中的实际情况相联系:

比喻:动物园的讲解员和动物表演

想象一下你去了一家动物园,看到了许多不同种类的动物,如狮子、大象、猴子等。现在,动物园里有一位讲解员,他会为每种动物表演做简单的介绍。

在这个场景中,我们可以将动物比作是不同的类,而每种动物表演则是类中的函数。而讲解员则是一个基类,他可以根据每种动物的特点和表演,进行相应的介绍。

具体过程如下:

定义一个基类 Animal,其中有一个虛函数perform(),用于在子类中实现不同的表演行为。

代码:

#include <iostream>using namespace std;class Animal
{
public:virtual void perform() = 0;virtual ~Animal(){}
};class Type:public Animal
{
private:string name;string food;
public:Type(string name,string food):name(name),food(food){}void perform(){cout << "这个动物的名字是:" << name << endl;cout << "喜欢吃:" << food << endl;}
};int main()
{Animal *p;Type s1("monkey","banana");p = &s1;p->perform();Type s2("tiger","meat");s2.perform();delete p;p = nullptr;return 0;
}

运行结果:

思维导图:

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用23种设计模式打造一个cocos creator的游戏框架----(五)工厂方法模式

1、模式标准 模式名称&#xff1a;工厂方法模式 模式分类&#xff1a;创建型 模式意图&#xff1a;定义一个用于创建对象的接口&#xff0c;让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。 结构图&#xff1a; 适用于&#xff1a; 1、当一个类不知道它…

failed to install plugin grafana 插件安装失败

升级时忽略plugins 权限问题&#xff0c;导致安装插件失败&#xff01;调整权限即可

042:el-table表格表头自定义高度(亲测好用)

第042个 查看专栏目录: VUE ------ element UI 专栏目标 在vue和element UI联合技术栈的操控下&#xff0c;本专栏提供行之有效的源代码示例和信息点介绍&#xff0c;做到灵活运用。 &#xff08;1&#xff09;提供vue2的一些基本操作&#xff1a;安装、引用&#xff0c;模板使…

Shrio 安全框架

目录 前言 1.介绍 2.整合 Shiro 到 Spring Boot 3.Shiro 相关配置 总结 前言 几乎所有涉及用户的系统都需要进行权限管理&#xff0c;权限管理涉及到一个系统的安全。Spring Boot 的安全框架整合方案中还有一个璀璨的明珠&#xff1a;Shrio。 1.介绍 Shiro是一款由Java 编…

信道复用技术

目录 一、频分复用FDM&#xff08;Frequency Division Multiplexing&#xff09; 二、波分复用 WDM&#xff08;Wavelength Division Multiplexing&#xff09; 三、时分复用TDM&#xff08;Time Division Multiplexing&#xff09; 四、统计时分复用 STDM&#xff08;Statisti…

双通道5V高细分步进电机驱动芯片应用于摇头机,X,Y控制,聚焦控制,CAMERA云台控制等产品上的芯片选型分析

双通道5V高细分步进电机驱动芯片GC6106&#xff0c;GC6107&#xff0c;GC6119&#xff0c;GC6151&#xff0c;GC6236&#xff0c;GC6225&#xff0c;GC6129&#xff0c;电压范围3~5.5V&#xff0c;最大持续电流可达0.6A左右。可应用于摇头机&#xff0c;X,Y控制&#xff0c;聚焦…

基于AIS数据的船舶密度计算与规律研究

参考文献&#xff1a;[1]陈晓. 基于AIS数据的船舶密度计算与规律研究[D].大连海事大学,2021.DOI:10.26989/d.cnki.gdlhu.2020.001129. 谢谢姐姐的文章&#xff01; 网格化AIS数据 网格化 AIS 数据是处理和分析船舶轨迹数据的一种有效方法&#xff0c;特别是当涉及到密度计算和…

Vue3+Antd实现弹框显示内容并加入复制按钮

使用Vue3antd实现点击弹框出现内容并可复制内容的功能&#xff1a; HTML部分&#xff1a; <a-button type"primary" click"showModel">打开弹框 </a-button><!-- ok 是弹框中确定按钮的操作&#xff0c;cancel 是弹框中取消按钮的操作 --…

Redis数据已经删除了,为什么内存占用还是很高?

Redis数据已经删除了&#xff0c;为什么内存占用还是很高&#xff1f; Redis做了数据删除操作&#xff0c;为什么使用top命令时&#xff0c;还是显示Redis占了很多内存&#xff1f; 没做相关功课的人觉得这个问题有问题&#xff0c;删了数据还说占着内存&#xff0c;面试官不…

【学一点儿前端】真机调试本地公众号网页项目

前言 微信公众号网页开发的真机调试一直是很头疼的事情。 原因一 微信公众号配置的JS安全域名只有三个&#xff0c;一个大中型的公众号这三个JS安全域名都是生产的域名&#xff0c;不可能预留域名用于开发和调试。 原因二 在微信里面只有访问正确的安全域名才能调用wx.config用…

vuepress-----18、图片缩放

图片引入两种方式 地址 # 图片缩放插件 # 实战 md文件引入图片 <img class"zoom-custom-imgs" :src"$withBase(/favicon.ico)" alt"favicon">安装配置插件 vuepress/medium-zoom: {selector: img.zoom-custom-imgs,},效果展示

MVCC是什么

程序员的公众号&#xff1a;源1024&#xff0c;获取更多资料&#xff0c;无加密无套路&#xff01; 最近整理了一波电子书籍资料&#xff0c;包含《Effective Java中文版 第2版》《深入JAVA虚拟机》&#xff0c;《重构改善既有代码设计》&#xff0c;《MySQL高性能-第3版》&…

ChibiOS简介1/5

ChibiOS简介1/5 1. 源由2. ChibiOS基础知识1/52.1 Chapter 1 - Introduction2.1.1 Priciple&#xff08;设计原则&#xff09;2.1.2 Fundamental requirements&#xff08;基本需求&#xff09; 2.2 Chapter 2 - Real Time Systems Concepts2.2.1 System&#xff08;系统&#…

flutter TextPainter 的用法

本文章基于 Flutter 3.16.2 Dart SDK 3.2.2。 TextPainter 是 Flutter 中用于在 Canvas 上绘制文本的类。它允许您在自定义的 CustomPainter 中使用 drawText 方法来绘制文本&#xff0c;并可以控制文本的位置、颜色、字体等属性。 import package:flutter/material.dart;cla…

css 输入框动态特效

先上图 代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>css 输入框动效</title><style>.inputBox {position: relative;width: 250px;}.inputBox input {width: 100%;padding: 10px…

使用git push太慢怎么办

使用git push太慢怎么办 修改host文件&#xff1a; windows 的路径应该在 C:\Windows\System32\drivers\etc\hosts 在host文件的最后一行加上 151.101.72.249 github.global.ssl.fastly.nethost不允许修改就复制一份&#xff0c;修改好了再替换掉&#xff0c;可能会让你输入…

【面试经典150 | 二叉树】对称二叉树

文章目录 写在前面Tag题目来源解题思路方法一&#xff1a;递归方法二&#xff1a;迭代 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法&#xff0c;两到三天更新一篇文章&#xff0c;欢迎催更…… 专栏内容以分析题目为主&#xff0c;并附带一些对于本题涉及到的…

【优选算法系列】【专题一双指针】第三节.611. 有效三角形的个数和LCR 179. 查找总价格为目标值的两个商品

文章目录 前言一、有效三角形的个数 1.1 题目描述 1.2 题目解析 1.2.1 算法原理 1.2.2 代码编写 1.2.3 题目总结二、查找总价格为目标值的两个商品 2.1 题目描述 2.2 题目解析 2.2.1 算法原理 …

2024山东健博会,济南健康展,5月中国大健康展,健康管理展

China-DJK山东健博会&#xff1a;5月黄金招商季&#xff0c;携千家参展商、万余款产品精彩亮相&#xff1b; DJK 2024第6届中国&#xff08;济南&#xff09;国际大健康产业博览会 The 2024 sixth China (Jinan) International Big Health Industry Expo 时间&#xff1a;2024…

Docker网络原理

Docker网络概述 1.桥接模式介绍 bridge模式是docker的默认网络模式。 桥接模式是一种用于连接两个不同网络段的设备&#xff0c;使它们能够共享通信的一种方式。 桥接设备工作在OSI模型的第二层&#xff0c;即数据链路层&#xff0c;通常基于MAC地址进行帧转发。 物理层连接…