用C++做一个猫吃鱼的函数代码

要求:

写一个类Fish,有品种和重量两个属性,属性的类型自己选择,要求属性封装。

写一个类Cat,Cat中有一个公有的成员函数:

Fish& eat(Fish &f);

eat函数的功能要求判断Fish的品种:

●如果品种是“秋刀鱼”,则输出“无论多沉,我都爱吃。”。同时修改Fish &f的重量为0,并作为函数的返回值返回。

●如果品种不是“秋刀鱼”,则判断鱼的重量,若重量大于200,吃鱼输出信息并返回一个重量为0的Fish;若重量小于200,输出信息,不要修改鱼的重量,直接返回鱼的对象。

#include <iostream>using namespace std;class Fish
{
private:string kind;   // 品种int weight;     // 重量public:Fish(string k,int w):kind(k),weight(w){}string get_kind(){return kind;}void set_kind(string k){kind = k;}int get_weight(){return weight;}void set_weight(int w){weight = w;}friend class Cat;};class Cat
{public:int weight;int get_weight(){return weight;}Fish& eat(Fish &f){if(f.get_kind()=="秋刀鱼"){cout<<"无论多沉,只要是秋刀鱼,本喵都爱吃"<< endl;this->weight=0;}else{if(f.get_weight()>200){cout<<"虽然不是秋刀鱼,但鱼也不小了,本喵勉为其难就吃了吧"<<endl;this->weight=0;}else{cout<<"不是秋刀鱼,还这么小,是不是糊弄我猫大人,本喵不吃"<<endl;this->weight=f.get_weight();}}}
};int main()
{
while(1)
{string a;int b;cout << "请输入这只鱼的的品种、重量" <<endl;cin >> a>> b;Fish d(a,b);Cat d2;d2.eat(d);cout<<"鱼的体重"<<d2.get_weight()<<endl;}return 0;
}

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

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

相关文章

qt 获取系统主机名、UID序列号、以及磁盘空间等其他信息

使用qt接口获取系统主机名、UID序列号、以及磁盘空间、当前网络传输速率&#xff0c;显卡参数等 void logPCInfo() { LOG_FUN(LOG_LEVEL_INFO, "Host Name: %s", QSysInfo::machineHostName().toStdString().c_str()); LOG_FUN(LOG_LEVEL_INFO, "Machin…

Open3D点云处理学习

Color ICP Colored point cloud registration — Open3D 0.11.0 documentation Colored point cloud registration - Open3D 0.18.0 documentation 展示了使用color-icp结果 对比gicp错误处理结果 intel自己的论文 Colored Point Cloud Registration Revisited 优化方程 参…

临时关闭Windows安全中心

在使用WindowsOS是&#xff0c;微软安全中心是我们必不可少的安全防护&#xff0c;但有时我们也会产生想要将其关闭的需求&#xff0c;下面将要介绍如何临时关闭Windows的安全中心 一、打开安全中心、选择“病毒与威胁防护”&#xff0c;点击“管理设置” 之后将其实时保护关闭…

PPT的精细化优化与提升策略

&#x1f44f;&#x1f44f;&#x1f44f;欢迎来到我的博客 ! 亲爱的朋友们&#xff0c;欢迎您们莅临我的博客&#xff01;这是一个分享知识、交流想法、记录生活的温馨角落。在这里&#xff0c;您可以找到我对世界独特视角的诠释&#xff0c;也可以与我一起探讨各种话题&#…

openjudge_2.5基本算法之搜索_8465:马走日

题目 8465:马走日 总时间限制: 1000ms 内存限制: 65536kB 描述 马在中国象棋以日字形规则移动。 请编写一段程序&#xff0c;给定n*m大小的棋盘&#xff0c;以及马的初始位置(x&#xff0c;y)&#xff0c;要求不能重复经过棋盘上的同一个点&#xff0c;计算马可以有多少途径遍…

ROS中C++、Python完整的目录结构

文章目录 在ROS中&#xff0c;一个典型的C软件包目录结构通常包括以下几个主要目录&#xff1a; include&#xff1a;该目录包含C头文件&#xff08;.hpp或者.h文件&#xff09;&#xff0c;用于声明类、函数、变量等。通常&#xff0c;这些头文件定义了ROS节点、消息类型、服务…

轻量级日志系统——Loki

目录 一、loki简介 二、Loki 快速上手 第一步安装 Loki 第二步安装 Promtail 第三步安装granafa 三、LogQL 语法 四、Loki收集nginx日志 1、修改nginx配置 2、nginx服务器上安装promtail 3、添加doshbarod 一、loki简介 Loki是 Grafana Labs 团队最新的开源项目&am…

什么是负载均衡技术?

随着网络技术的快速发展&#xff0c;互联网行业也越来越广泛&#xff0c;人们的日常生活中也离不开网络技术&#xff0c;大量的用户进行浏览访问网站时&#xff0c;企业会使用负载均衡技术&#xff0c;降低当前网站的负载&#xff0c;以此来提高网站的访问速度。 今天小编就来给…

【Springcloud微服务】Docker上篇

&#x1f525; 本文由 程序喵正在路上 原创&#xff0c;CSDN首发&#xff01; &#x1f496; 系列专栏&#xff1a;Springcloud微服务 &#x1f320; 首发时间&#xff1a;2024年6月22日 &#x1f98b; 欢迎关注&#x1f5b1;点赞&#x1f44d;收藏&#x1f31f;留言&#x1f4…

新闻管理与推荐系统Python+Django+协同过滤推荐算法+管理系统

一、介绍 新闻管理与推荐系统。本系统使用Python作为主要开发语言开发的一个新闻管理与推荐的网站平台。 网站前端界面采用HTML、CSS、BootStrap等技术搭建界面。后端采用Django框架处理用户的逻辑请求&#xff0c;并将用户的相关行为数据保存在数据库中。通过Ajax技术实现前后…

`QDBusConnection` 和 `QDBusInterface`区别

QDBusConnection 和 QDBusInterface 是 Qt 框架中用于 D-Bus 通信的两个不同类&#xff0c;它们有不同的用途和功能。 QDBusConnection QDBusConnection 代表一个 D-Bus 连接。它负责管理和维护与 D-Bus 的连接。这个类提供了多种方法&#xff0c;用于在 D-Bus 上进行信号和方法…

【深度神经网络 (DNN)】

深度神经网络 (DNN) 深度神经网络 (DNN) 是机器学习领域中一种强大的工具&#xff0c;它由多层神经元组成&#xff0c;能够学习复杂的数据模式&#xff0c;解决各种任务&#xff0c;如图像识别、语音识别、自然语言处理等。 DNN 的构成&#xff1a; 神经元: DNN 的基本单元&…

jasypt对yml文件进行加密解密

目录 0.背景 1.依赖 2.yml文件 3.加密操作 0.背景 在日常开发中&#xff0c;我们一般会把账号密码以及一些用到的各种第三方服务的Access_Key都放入yml文件中&#xff0c;这时就有必要对yml文件进行加密处理了&#xff0c; jasypt是一款简单的对yml加密的工具 1.依赖 &l…

MongoDB异地备份数据文件脚本(带日志打印,便于排查)

此脚本是以文件夹的形式备份&#xff0c;非压缩包形式 如需备份成加密压缩包&#xff0c;可用此脚本&#xff1a;MongoDB定时异地备份所有数据库为加密压缩包-CSDN博客 1.可以直接下载本文件使用&#xff0c;将其放到mongo安装目录的bin目录下&#xff08;可手动执行&#xf…

【ARMv8/v9 GIC 系列 2.2 -- GIC SPI 中断的 GICD_ISACTIVER 和 GICD_ICACTIVER 配置】

文章目录 GIC 中断 Active 状态的配置中断状态分类GICD_ISACTIVER<n>GICD_ICACTIVER<n>参数 n 编号解释中断设置举例设置中断ID 68为活动状态清除中断ID 68的活动状态 小结 GIC 中断 Active 状态的配置 在ARMv8/ARMv9 体系结构中&#xff0c;GICD_ISACTIVER<n&…

学习新语言方法总结(二)

上一篇介绍了学习语言的数据类型、流程控制&#xff0c;leetcode上刷几道题目应该对基本代码逻辑有所了解了。这一篇主要来说一下进阶模块&#xff1a;面向对象 OOP思想是编程中重要的一个模块&#xff0c;在各个语言都有大量的广泛运用&#xff0c;废话不多说&#xff0c;直接…

2021数学建模C题目– 生产企业原材料的订购与运输

C 题——生产企业原材料的订购与运输 思路&#xff1a;该题主要是通过对供应商的供货能力和运送商的运货能力进行估计&#xff0c;给出合适的材料订购方案 程序获取 第一题问题思路与结果&#xff1a; 对 402 家供应商的供货特征进行量化分析&#xff0c;建立反映保障企业生…

POSIX标准接口概述

基本介绍 主要参考&#xff1a; Linux 系统中的 POSIX 接口详细介绍_linux posix-CSDN博客 POSIX&#xff08;Portable Operating System Interface&#xff0c;可移植操作系统接口&#xff09;是由 IEEE&#xff08;Institute of Electrical and Electronics Engineers&#x…

Java爬虫(一)

一、Java爬虫简介 1.1 Selenium Selenium爬虫是一种基于浏览器自动化的爬虫技术&#xff0c;可以模拟用户的操作行为&#xff0c;实现对动态网页的爬取。 1.2 jsoup Jsoup拥有十分方便的api来处理html文档&#xff0c;比如参考了DOM对象的文档遍历方法&#xff0c;参考了CSS选…

jeecg-boot项目的部署-windows系统

一、基础环境的准备&#xff1a; 1、后台基础环境&#xff1a;JDK、redis、数据库&#xff1a;sqlserver 2、前端基础环境&#xff1a;nginx redis和nginx的安装都很方便&#xff0c;直接去对应的官网&#xff0c;下载zip压缩包&#xff0c;然后解压&#xff0c;执行.exe文件…