C++240611

news2024/11/16 1:18:49

2.编程题:

以下是一个简单的 比喻,将 多态概念 与 生活中 的 实际情况相联系:
比喻:动物园的讲解员和动物表演
想象一下你去了一家动物园,看到了许多不同种类的动物,
如狮子、大象、猴子等。现在,动物园里有一位讲解员,他会为每种动物表演做简单的介绍。
在这个场景中,我们可以将动物比作是不同的类,
而每种动物表演则是类中的函数。而讲解员则是一个基类,
他可以根据每种动物的特点和表演,进行相应的介绍。
具体过程如下:
定义一个基类 Animal,其中有一个虛函数 perform(),用于在 子类中 实现不同的 表演行为。

#include <iostream>

using namespace std;
//封装 讲解员 父级 大类
class Animal{
public:
    virtual void perform(){  //该函数是虚函数 同名函数
        cout << "讲解员开始介绍" << endl;
    }
};
//封装 狮子 类   共有继承于 讲解员 类
class Lion:public Animal{
    void perform(){  //同名函数
        cout << "狮子……" << endl;
    }
};
//封装 老虎 类   共有继承于 讲解员 类
class Tiger:public Animal{
    void perform(){  //同名函数
        cout << "老虎……" << endl;
    }
};
//封装 猴子 类   共有继承于 讲解员 类
class Monkey:public Animal{
    void perform(){  //同名函数
        cout << "猴子……" << endl;
    }
};
int main()
{
    Lion L;  //用狮子的类 实例化一个 对象 T
    Tiger T;
    Monkey M;

    Animal *p = &L;  //父类指针 指向狮子
    p->perform();  //显示输出
    p = &T;  //父类指针 指向老虎
    p->perform();  //显示输出
    p = &M;  //父类指针 指向猴子
    p->perform();  //显示输出

    return 0;
}

结果:
狮子……
老虎……
猴子……


思源笔记

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

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

相关文章

冰蝎4.1webshell实验

1、基础环境 生成payload 2、default_xor_base64 HTTP 命令执行 chunked数据回包&#xff0c;48 3、default_xor_base64 HTTPS 命令执行 终端 文件管理 4、 default_aes https 虚拟终端 5、 default_aes http 虚拟终端

基于微信小程序的“最多跑一次”警务信息管理系统

作者主页&#xff1a;Java码库 主营内容&#xff1a;SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app等设计与开发。 收藏点赞不迷路 关注作者有好处 文末获取源码 技术选型 【后端】&#xff1a;Java 【框架】&#xff1a;ssm 【…

【安卓13 源码】Input子系统(2) - input系统与应用进程通信

点击手机屏幕&#xff0c;可以分发input 事件到对应的view&#xff0c;由上一节知道input 是运行在system 进程的&#xff0c;那应用进程与系统进程是如何通讯的呢&#xff0c;相信本文可以给到一点小小的答案。 先给个结论&#xff1a;应用在resume 的时候才去建立与input 服…

Rust学习06:使用CSDN的AI工具“C知道”分析代码错误

朋友们&#xff0c;我最近真的是在绝望的边缘了&#xff01; Rust咋这么蓝涅&#xff01; 资料咋这们少涅&#xff01; 记得学Python的时候&#xff0c;基本上你遇到的所有问题都可以在书上或者网上找到答案&#xff0c;中文世界找不到那么在英文世界一定能找到答案。 我猜&…

intel 660P SSD 512GB测评

** intel 660P SSD 512GB测评 ** PCIE 3.0X4 支持NVME 1.3协议 固件版本号HPS0 顺序Read速度1843MB\s 顺序Write速度946MB\s 4K随机Read速度275MB\s 4K随机Write速度592MB\s H2缓内Write速度671MB\s H2缓外Write速度368MB\s H2全盘Read速度870MB\s HDtune全盘Read速度1853MB\…

ModbusTCP、TCP/IP都走网线,一样吗?

在现代通信技术中&#xff0c;Modbus/TCP和TCP/IP协议是两种广泛应用于工业自动化和网络通信领域的协议。尽管它们都运行在网线上&#xff0c;但它们在设计、结构和应用场景上有着明显的区别。 Modbus/TCP协议是什么 Modbus/TCP是一种基于TCP/IP的应用层协议&#xff0c;它是Mo…

gitLab批量下载有权限的项目

前言 参考 https://www.jianshu.com/p/b3d4e5cee835 适用于git私服拉取个人所涉及权限的代码&#xff0c;方便有多个项目权限的人快速拉取自己所有权限的代码。 默认生成目录结构与gitlab一致 步骤一:获取权限你的代码权限文件d 从gitlab私服生成所有你有权限的代码信息 …

DevExpress Data Binding

DevExpress数据感知控件与任何数据访问技术&#xff08;ADO.NET、Entity Framework、XPO等&#xff09;兼容&#xff0c;并且可以显示来自实现IList、IBindingList或ITypedList接口的任何数据源的数据。有关更多详细信息&#xff0c;请参阅这些帮助主题&#xff1a;传统数据绑定…

excel两个数据表格,怎样实现筛选的联动?

如图&#xff0c;想要通过处理器或者像素条件进行筛选&#xff0c;形成一个右边图2的对比表&#xff0c;如何实现实现联动显示呢&#xff1f; 这个在excel里可以借用数据透视表切片器来完成。步骤如下&#xff1a; 1.添加表 选中数据区域中任意一个单元格&#xff0c;点击 插…

Query传递的参数需不需要加注解?加什么?为什么有的时候要加有的时候不加?

Query传递过来的参数可以加&#xff0c;也可以不加注解。如果要加&#xff0c;是在传递的参数名和后端的变量名不一致的情况下&#xff0c;要加RequestParam如果传递过来的参数名和后端的变量名一致&#xff0c;则可以不加RequestParam。 传递过来的数据如果是通过 Query 方式…

TLS指纹跟踪网络安全实践(C/C++代码实现)

TLS指纹识别是网络安全领域的重要技术&#xff0c;它涉及通过分析TLS握手过程中的信息来识别和验证通信实体的技术手段。TLS&#xff08;传输层安全&#xff09;协议是用于保护网络数据传输的一种加密协议&#xff0c;而TLS指纹则是该协议在实际应用中产生的独特标识&#xff0…

Desoutter电动拧紧扳手控制器维修看看这里

马头拧紧工具控制器作为现代工业生产中的重要设备&#xff0c;其稳定性和可靠性对于生产线的连续运行至关重要。然而&#xff0c;在使用过程中&#xff0c;由于各种原因&#xff0c;可能会出现马头电动拧紧控制器故障。【选择子锐机器人维修服务&#xff0c;您将享受以下优势和…

湖南大学CS-2023期末考试解析

前言 有幸作为助教参与信息院“周末夜校”讲解2023年试卷第2-3题&#xff08;汇编&#xff09;&#xff0c;借这个契机重新温习了一下这份试卷。 以下各部分的PPT由讲评助教分别完成并讲解。 1,6题 计科21杨助教2,3题 计科21甘晴void4,5题 智能21姚助教 由于2,3题过程较为繁…

HJS-DE1/3断电延时时间继电器 导轨安装 约瑟JOSEF

​HJS-DE断电延时时间继电器 HJS-DE1/3断电延时时间继电器 HJS-DE1/2断电延时时间继电器 HJS-DE断电延时时间继电器 用途 时间继电器HJS-DE1/3作为通电立即动作断电延时返回的元件&#xff0c;用于交流或直流保护和自动控制装置中&#xff0c;使被控元件得到所需延时。本继电…

10_Transformer预热---注意力机制(Attention)

1.1 什么是注意力机制(attention) 注意力机制&#xff08;Attention Mechanism&#xff09;是一种在神经网络中用于增强模型处理特定输入特征的能力的技术。它最早被应用于自然语言处理&#xff08;NLP&#xff09;任务中&#xff0c;特别是在机器翻译中&#xff0c;如Google的…

如何在Java中使用pdfbox,进行生成pdf操作,如文本居中,数据二列显示及图片显示?

pdfbox的基本使用 1. 添加 PDFBox 依赖 首先&#xff0c;确保你的项目中已经添加了 PDFBox 的 Maven 依赖。你可以使用类似以下的 Maven 依赖配置&#xff1a; <dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId&g…

【第1章】Vue环境搭建

文章目录 前言一、安装Node1. 下载2. 安装3. 验证3.1 npm版本与Node.js版本3.2 验证环境 4. npm4.1 安装npm4.2 安装包4.3 全局安装包4.4 更新包4.5 删除包4.6 查看已安装的包4.7 初始化package.json 5. 国内源 二、安装Visual Studio Code1.下载2.安装3.安装Vue - Official 三…

Nuxt3 实战 (八):优雅的实现暗黑主题模式

前言 在 Nuxt3 中要实现暗黑模式&#xff0c;需要用到一个库&#xff1a;color-mode&#xff0c;它可以帮助我们很轻易地实现暗黑模式切换。 具体使用 安装 nuxtjs/color-mode 依赖&#xff1a; pnpm add nuxtjs/color-mode -D打开 nuxt.config.ts 配置文件注入依赖&#x…

【Linux】shell脚本变量——系统变量、环境变量和用户自定义变量

系统变量 系统变量是由系统预设的&#xff0c;它们通常在系统启动时被加载&#xff0c;并对所有用户和所有shell实例都有效。这些变量通常控制着系统的行为和配置&#xff0c;例如PATH&#xff08;命令搜索路径&#xff09;、HOME&#xff08;用户主目录&#xff09;等。系统变…

美团强势领涨恒指,港股即将迎来触底反弹?

恒指早间低开低走&#xff0c;持续低位徘徊&#xff0c;一度试探万八关口&#xff0c;最低见17994点&#xff0c;市场情绪表现疲弱&#xff0c;大型科技股普遍走低&#xff0c;但主要指数午后回升&#xff0c;恒生科技指数率先转涨&#xff0c;美团(3690.HK)涨超4%领涨成分股&a…