C++-5

 完成特殊成员函数

#include <iostream>using namespace std;class Person
{string name;int *age;
public://构造,析构,拷贝构造,拷贝赋值Person():age(new int ){}Person(int *age,string name):name(name),age(new int (*(age))){}~Person(){delete age;}Person(const Person& other):name(other.name),age(new int (*(other.age))){}Person& operator=(const Person& other){*(this->age)=*(other.age);this->name = other.name;return *this;}};class Stu:public Person
{const double score;
public://构造,析构,拷贝构造,拷贝赋值Stu():score(12){}Stu(double score):score(score){}Stu(double score,string name,int *age):Person(age,name),score(score){}~Stu(){}Stu(const Stu& other):Person(other),score(other.score){}Stu& operator=(const Stu& other){Person::operator=(other);return *this;}};

 定义一个全局变量int monster = 10000;定义一个英雄类Hero,受保护的属性,string name,int hp,int attck,写一个无参构造、有参构造,类中有虚函数:void Atk(){monster-=0;};法师类,公有继承自英雄类,私有属性:int ap_ack;写有参,重写父类中的虚函数,射手类,公有继承自英雄类,私有属性:int ad_ack;写有参构造,重写父类中的虚函数,主函数内完成调用,判断怪物何时被杀死。

#include <iostream>using namespace std;
int monster = 10000;
class Hero
{
protected:string name;int hp;int attck;
public:Hero(){}Hero(string name,int hp,int attck):name(name),hp(hp),attck(attck){}virtual void Atk(){monster-=0;}
};
class Master:public Hero
{int ap_ack;
public:Master(int ap_ack,string name,int hp,int attck):Hero(name,hp,attck),ap_ack(ap_ack){}void Atk(){monster-=ap_ack+attck;}
};
class Shooter:public Hero
{int ad_ack;
public:Shooter(int ad_ack,string name,int hp,int attck):Hero(name,hp,attck),ad_ack(ad_ack){}void Atk(){monster-=ad_ack+attck;}
};
int main()
{Shooter s1(500,"Draven",1500,500);Master m1(800,"ali",1000,100);int i=0;while(monster>=0){s1.Atk();if(monster<=0){cout << "monster还剩" << monster <<endl;break;}m1.Atk();cout << "monster还剩" << monster <<endl;i++;}cout << "time is taken "<< i << " s " <<  endl;return 0;
}

 

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

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

相关文章

src下的jmh main test testFixtures的包具体作用

在Spring框架或者基于Spring的项目中&#xff0c;特别是使用Maven或Gradle作为构建工具时&#xff0c;src目录下通常会有几个标准的子目录&#xff0c;用于组织不同类型的源代码和资源文件。下面是对您提到的几个子目录的解释&#xff1a; src/main/ 这是项目的主要源代码目录。…

CSS 中的 Clamp 函数:掌握动态布局的秘籍

在前端开发领域&#xff0c;实现响应式设计的关键之一是能够灵活地控制元素尺寸&#xff0c;确保它们既不过小影响阅读&#xff0c;也不至于过大破坏布局和谐。CSS 的 clamp() 函数正是这样一位能手&#xff0c;它允许你为长度、宽度、字体大小等属性设定一个动态范围&#xff…

unity制作app(2)--主界面

1.先跳转过来&#xff0c;做一个空壳&#xff01;新增场景main为4号场景&#xff01; 2.登录成功跳转到四号场景&#xff01; 2.在main场景中新建canvas&#xff0c;不同的状态计划用不同的panel来设计&#xff01; 增加canvas和底图image 3.突然输不出来中文了&#xff0c;浪…

【C语言加油站】字符函数与字符串函数

字符函数与字符串函数 导言一、字符分类函数1.1 字符分类函数的用法 二、字符转换函数2.1 字符转换函数的用法 三、字符串函数3.1 成员3.2 strlen函数3.2.1 size_t类型3.2.2 strlen的易错点3.2.2 strlen的使用3.2.3 strlen与sizeof 3.3 strcpy函数和strncpy函数3.3.1 strcpy和s…

unity 专项一 localPosition与anchoredPosition(3D)的区别

一 、RectTransform 概念 1、RectTransform继承自Transform&#xff0c;用于描述矩形的坐标(Position)&#xff0c;尺寸(Size)&#xff0c;锚点(anchor)和中心点(pivot)等信息&#xff0c;每个2D布局下的元素都会自动生成该组件。 2、当我们在处理UI组件时&#xff0c;往往容易…

VTK 的可视化方法:Glyph

VTK 的可视化方法&#xff1a;Glyph VTK 的可视化方法&#xff1a;Glyph标量、向量、张量将多边形数据的采集点法向量标记成锥形符号参考 VTK 的可视化方法&#xff1a;Glyph 模型的法向量数据是向量数据&#xff0c;因此法向量不能像前面讲到的通过颜色映射来显示。但是可以通…

【计算机网络】网络层总结

目录 知识梗概 IP地址 子网划分 IP包头格式 路由 网络层协议 ARP病毒/ARP欺骗 知识梗概 IP地址 IP相关介绍&#xff1a;机器之间需要交流&#xff0c;必须要一个地址才能找到对应的主机&#xff0c;IP地址是主机的一种表示&#xff0c;保证主机之间的正常通信&#xff…

LabVIEW高效目标跟踪系统

LabVIEW高效目标跟踪系统 随着机器视觉技术的飞速发展&#xff0c;设计和实现高效的目标跟踪系统成为了众多领域关注的焦点。基于LabVIEW平台&#xff0c;结合NI Vision机器视觉库&#xff0c;开发了一种既高效又灵活的目标跟踪系统。通过面向对象编程方法和队列消息处理器程序…

load a PyTorch model from a TF 2.0 checkpoint, please set from_tf=True

load a PyTorch model from a TF 2.0 checkpoint, please set from_tfTrue 报错代码&#xff1a; self.audio_encoder HubertModel.from_pretrained("facebook/hubert-base-ls960") 总结了一下网络上的方法 1. 可能是模型没有下载完整&#xff0c;重新在hugging f…

论文复现4,Awe:Waypoint-Based Imitation Learning for Robotic Manipulation

复现aloha增加航点预处理,代码根据官方代码链接:https://github.com/lucys0/awe 因为是在远程和local都安装过一次,遇到问题有点频繁,所以安装过程和问题一起写的,应该是挺全了。 git clone https://github.com/lucys0/awe.gitcd aweconda create -n awe python=3.9conda…

File contains parsing errors: file:///etc/yum.repos.d/nginx.repo报错解决,文件配置出现问题

执行yum指令出现以下错误&#xff1a; 解决方案&#xff1a;yum的配置文件出现问题&#xff0c; 先删除yum.repos.d目录下所有文件 rm -f /etc/yum.repos.d/* 然后重新下载阿里的资源 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.…

【CSS】基础

文章目录 一、CSS 是什么二、基本语法规范 一、CSS 是什么 层叠样式表 (Cascading Style Sheets). CSS 能够对网页中元素位置的排版进行像素级精确控制, 实现美化页面的效果. 能够做到页面的样式和结构分离. 二、基本语法规范 选择器 {一条/N条声明} 选择器决定针对谁修改 …

无人机+大载重+长航时:油电混动多旋翼无人机技术详解

多旋翼无人机是一种具有三个及以上旋翼轴的特殊的无人驾驶旋翼飞行器。具有稳定性强、操控简单、勤务性高、价格便宜等优势&#xff0c;因此在市场上的应用非常广泛。此外&#xff0c;利用地面供电的绳系多旋翼通过电缆向多旋翼持续传输电能&#xff0c;可以大大提高多旋翼的空…

常见大模型框架

生成对抗网络&#xff08;GAN&#xff09;类似框架 StyleGAN&#xff08;及其变体StyleGAN2和StyleGAN3&#xff09;&#xff1a; 开发者&#xff1a;NVIDIA 特点&#xff1a;能够生成极高质量的图像&#xff0c;广泛应用于人脸生成、艺术创作等领域。 BigGAN&#xff1a; 开发…

【Java EE】MyBatis使用注解操作数据库

文章目录 &#x1f340;参数传递&#x1f334;增(Insert)&#x1f338;返回主键 &#x1f343;删(Delete)&#x1f333;改(Update)&#x1f332;查(Select)&#x1f338;起别名&#x1f338;结果映射&#x1f338;开启驼峰命名(推荐) ⭕总结 &#x1f340;参数传递 需求: 查找…

邊緣智能2024—AI開發者峰會(5月9日)數碼港即將啟幕

隨著 AI &#xff08;人工智能&#xff09;技術的飛速發展&#xff0c;我們正迎來邊緣計算智能化與分布式AI深度融合的新時代&#xff0c;共同演繹分布式智能創新應用的壯麗篇章。"邊緣智能2024 - AI開發者峰會"將聚焦於這一前沿領域&#xff0c;探討如何通過邊緣計算…

贪心算法基础题(第三十四天)

1005. K 次取反后最大化的数组和 题目 给你一个整数数组 nums 和一个整数 k &#xff0c;按以下方法修改该数组&#xff1a; 选择某个下标 i 并将 nums[i] 替换为 -nums[i] 。 重复这个过程恰好 k 次。可以多次选择同一个下标 i 。 以这种方式修改数组后&#xff0c;返回数…

网络安全知识点

网络安全 1&#xff0e; 网络安全的定义&#xff0c;网络安全的属性。 定义&#xff1a;针对各种网络安全威胁研究其安全策略和机制&#xff0c;通过防护、检测和响应&#xff0c;确保网络系统及数据的安全性。 属性&#xff1a;机密性 认证&#xff08;可鉴别性&#xff09…

启发式搜索算法4 -遗传算法实战:吊死鬼游戏

相关文章: 启发式搜索算法1 – 最佳优先搜索算法 启发式搜索算法2 – A*算法 启发式搜索算法2 – 遗传算法 有一个小游戏叫吊死鬼游戏&#xff08;hangman&#xff09;&#xff0c;在学习英语的时候&#xff0c;大家有可能在课堂上玩过。老师给定一个英文单词&#xff0c;同学们…

Hive 单机版

Hive 安装 前提 安装 hadoop Ubuntu 安装、配置 MySQL 安装 sudo apt install mysql-serverMySQL 配置 假如你不知道 root 用户密码&#xff0c; 需要重置 root 密码 sudo passwd root切换到 root 用户 su - root使用命令 mysql 连接数据库 mysql创建用户管理数据库&a…