C++电子宠物商店

一、功能描述

店内有不同类型的电子宠物
1.每种电子宠物能通过显示出来的文本提出需要或表示情绪如:饿、渴、饱涨、困、不舒服、高兴、生气、伤心、绝望、无聊等。
2.店员用户通过键盘操作“饲养”电子宠物,给它实施喂饭、喂水、带它上厕所、陪它玩耍、哄它睡觉,带他看病等动作。当“饲养”不当导致电子宠物“死亡”,程序结束。“饲养”良好,当电子宠物活到指定年限“寿终正寝”。
3.可以购买新的宠物或者售出宠物。
4.可以统计宠物数量、查询宠物状态、价格。
5.为店主设计其它业务或管理功能。

二、项目大概

1.基于Qt框架实现窗口,包括商店登录页面、商店页面、宠物信息页面。
2.建立Pet类,包含饥饿值、心情值等,由其派生出各种类型,如Labrador,Civet…
3.通过信号与槽实现页面跳转、与宠物互动等操作。

三、设计内容

  1. 创建Pet类,设置成员变量和函数,派生出Labrador,Samoyed,Civet,Plush等子类。
  2. 创建ElectronicPetStore(.ui .h .cpp),作为登录页面。点击enter按钮可关闭登录页面且显示商店页面。
  3. 创建MainWindow(.ui .h .cpp),作为商店页面。在其中储存宠物,并且可以通过点击按钮实现买入宠物、照顾宠物、售出宠物、查看所有宠物的信息的操作。
  4. 创建Care(.ui .h .cpp),作为照顾页面,点击按钮将按钮编号传回MainWindow以实现对应操作。
    5.建立main.cpp创建窗口,实现电子宠物商店。

在这里插入图片描述

四、关键代码

#include "Samoyed.h"Samoyed::Samoyed(int buttonRow, int buttonCol)
{x = buttonRow; y = buttonCol;//name = s;type = "Samoyed";hunger = 25, thirsty = 35, urinate = 30;feeling = 80, spirit = 92, healthy = 94;life = 12;
}Samoyed::~Samoyed()
{
}

electronicPetStore.sln


Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.5.33627.172
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "electronicPetStore", "electronicPetStore\electronicPetStore.vcxproj", "{2A7DA5E7-E78F-4E37-91A6-253C63A322F1}"
EndProject
GlobalGlobalSection(SolutionConfigurationPlatforms) = preSolutionDebug|x64 = Debug|x64Release|x64 = Release|x64EndGlobalSectionGlobalSection(ProjectConfigurationPlatforms) = postSolution{2A7DA5E7-E78F-4E37-91A6-253C63A322F1}.Debug|x64.ActiveCfg = Debug|x64{2A7DA5E7-E78F-4E37-91A6-253C63A322F1}.Debug|x64.Build.0 = Debug|x64{2A7DA5E7-E78F-4E37-91A6-253C63A322F1}.Release|x64.ActiveCfg = Release|x64{2A7DA5E7-E78F-4E37-91A6-253C63A322F1}.Release|x64.Build.0 = Release|x64EndGlobalSectionGlobalSection(SolutionProperties) = preSolutionHideSolutionNode = FALSEEndGlobalSectionGlobalSection(ExtensibilityGlobals) = postSolutionSolutionGuid = {2FA01431-2398-4438-AEAE-2D636AB04151}EndGlobalSection
EndGlobal

五、项目展示

游戏登录页面

在这里插入图片描述

点击enter按钮进入商店页面,登录页面隐藏
在这里插入图片描述

点击按钮弹出care窗口

在这里插入图片描述

点击pet…按钮弹出Care窗口,选择new…创建宠物

点击其他按钮对宠物进行喂食、喂水、上厕所、玩耍、睡觉、看病、售出操作

在这里插入图片描述

若某处已有宠物再在此新建会弹出错误提示

在这里插入图片描述

宠物状态恢复正常后重新显示默认创建图片

在这里插入图片描述

对第三个宠物进行sell售出,会显示如下图片

创建宠物如下

点击view all 查看所有宠物的状态

在这里插入图片描述


六、联系与交流

q:969060742 完整代码、文档

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

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

相关文章

《无名之辈》天涯镖局攻略:高效拉镖窍门!

《无名之辈》天涯镖局开启要注意什么,在这里,每一次运镖都是一次刺激的冒险,而掌握合适的策略将让你事半功倍。以下是天涯镖局的开启攻略,助你在危机四伏的路途上赢得胜利。 ① 拉取适当级别的包子和加速卡 在天涯镖局中&#xf…

Weaviate

文章目录 关于 Weaviate核心功能部署方式使用场景 快速上手 (Python)1、创建 Weaviate 数据库2、安装3、连接到 Weaviate4、定义数据集5、添加对象6、查询1)Semantic search2) Semantic search with a filter 使用示例Similarity searchLLMs and searchC…

2024 年 15 个最佳自动化 UI 测试工具【建议收藏】

Web 开发行业正在不断发展,许多最佳自动化 UI 测试工具可用于测试基于 Web 的项目,以确保它没有错误并且每个用户都可以轻松访问。这些工具可帮助您测试您的 Web 项目并使其完全兼容用户端的要求和需求。 UI 自动化测试工具可测试基于 Web 的应用程序或软…

【Java多线程】2——synchronized底层原理

2 synchronized底层原理 ⭐⭐⭐⭐⭐⭐ Github主页👉https://github.com/A-BigTree 笔记仓库👉https://github.com/A-BigTree/tree-learning-notes 个人主页👉https://www.abigtree.top ⭐⭐⭐⭐⭐⭐ 如果可以,麻烦各位看官顺手点…

淘宝APP详情数据抓取技术揭秘:用Python实现自动化数据获取(附代码实例)

获取淘宝APP详情数据接口通常涉及到网络爬虫技术,因为淘宝作为一个大型电商平台,其数据并不直接对外公开提供API接口供第三方开发者使用。然而,通过模拟浏览器行为或使用淘宝开放平台提供的API(如果有的话)&#xff0c…

SpringBoot3的RabbitMQ消息服务

目录 预备工作和配置 1.发送消息 实现类 控制层 效果 2.收消息 3.异步读取 效果 4.Work queues --工作队列模式 创建队列text2 实体类 效果 5.Subscribe--发布订阅模式 效果 6.Routing--路由模式 效果 7.Topics--通配符模式 效果 异步处理、应用解耦、流量削…

Java八股文(SpringCloud Alibaba)

Java八股文のSpringCloud Alibaba SpringCloud Alibaba SpringCloud Alibaba Spring Cloud Alibaba与Spring Cloud有什么区别? Spring Cloud Alibaba是Spring Cloud的衍生版本,它是由Alibaba开发和维护的,相比于Spring Cloud,它在…

JavaScript Uncaught ReferenceError: WScript is not defined

项目场景: 最近在Visual Studio 2019上编译libmodbus库,出现了很多问题,一一解决特此记录下来。 问题描述 首先就是configure.js文件的问题,它会生成两个很重要的头文件modbus_version.h和config.h,这两个头文件其中…

如何使用Docker轻松构建和管理应用程序(二)

上一篇文章介绍了 Docker 基本概念,其中镜像、容器和 Dockerfile 。我们使用 Dockerfile 定义镜像,依赖镜像来运行容器,因此 Dockerfile 是镜像和容器的关键,Dockerfile 可以非常容易的定义镜像内容,同时在我们后期的微…

day53 动态规划part10

121. 买卖股票的最佳时机 简单 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可…

【Redis】Redis 介绍Redis 为什么这么快?Redis数据结构Redis 和Memcache区别 ?为何Redis单线程效率也高?

目录 Redis 介绍 Redis 为什么这么快? Redis数据结构 Redis 和Memcache区别 ? 为何Redis单线程效率也高? Redis 介绍 Redis 是一个开源(BSD 许可)、基于内存、支持多种数据结构的存储系统,可以作为数据…

如何本地部署Elasticsearch+cpolar实现公网查询与管理内网数据

文章目录 系统环境1. Windows 安装Elasticsearch2. 本地访问Elasticsearch3. Windows 安装 Cpolar4. 创建Elasticsearch公网访问地址5. 远程访问Elasticsearch6. 设置固定二级子域名 正文开始前给大家推荐个网站,前些天发现了一个巨牛的 人工智能学习网站&#xff…