IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C++游戏系列——音符游戏(1) -> 正文阅读

[C++知识库]C++游戏系列——音符游戏(1)

C++开发系列——音符游戏(1)

前言

游戏介绍:随机打印6~10个 ↑ ↓ ← → 的方向箭头,并且在规定的时间内按下相同的键,统计正确的个数,按照所有生成箭头数量与正确按键数量的百分比来算出得分。得分等级是: D:0~70 C:71~80 B:81~90 A:91~100

提示:本文基于C++面向对象(OOP)思想实现。以下是本篇文章正文内容,下面案例可供参考,撰写的时候难免有所不周,请批评指正。有问题请留言~

一、什么是面向对象(OOP)编程思想?

1.面向对象

面向对象编程的主体是对象,研究的问题也是一系列对象。这种思想认为,所有的程序都是由对象提供的功能组合完成,所以该方法首要的是抽象出能够反应客观世界统一特征或者规律的模型。简单来讲就是对某一种任务进行分类,不同的种类就是对具有共性的事物的归纳描述。
个人理解分析面向对象任务的一般流程如下:

(1) 抽象归纳阶段:
对任务需求进行“分类”,得到所有包括的类别。其实这里的每一个类别就是一种事物的描述模型。例如,狗是一个概括的类,具体的可以是黑色的狗,白色的狗等;
(2) 明确模型(类)内容阶段:
分析具备的能力与属性,这里的能力是指直接的能力,也就是能做什么,也可以讲是主动的行为。属性代表这个模型具体化后(对象)本身的特征,如宽度,高度,名称等;
(3) 添加能力与属性接口
确定能力的具体内容,确定属性的类型(int 、float、double、char…);
(4)实例化具体对象,并赋予属性特定的值
(5) 组合调用实例提供的能力,完成任务
(6) 测试

2.面向对象分析举例

这里我们看一个例子。题目是:下五子棋 。
使用OOP思想分析,按照上述面向对象分析流程,可以得到如下内容:

类(对象)能力和属性
棋盘系统{能力:绘制棋盘、刷新画面等} ——{属性:大小行列}
黑白双方{能力:下棋} ——{属性:名称}
游戏规则{能力:判定输赢,犯规} ——{属性:无}

二、音符游戏框架分析

1.分析任务

“音符游戏”在前言中已经有简单介绍,根据介绍,我们可以分析出完成该任务需要的工作有如下几个方面:

  1. 边界显示
  2. 计分板显示更新
  3. 游戏菜单栏
  4. 游戏引导箭头刷新
  5. 等待键盘输入
  6. 分析判断键盘方向与引导箭头的对应关系

按照面向对象分析思想,音符游戏可以抽象归纳的类有:游戏规则画面更新游戏玩家

2.流程与结构

通过分析每个对象的任务可以总结出下面的结构图:
在这里插入图片描述

3.实现流程

  1. 系统API介绍
  2. 新建项目
  3. 画面更新项目新建
  4. 游戏菜单设计
  5. 游戏背景设计
  6. 计分板设计
  7. 玩家输入判断
  8. 测试功能与总结

4.简易效果

在这里插入图片描述在这里插入图片描述

其他内容请看下期!

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-05 17:09:10  更:2021-08-05 17:09:18 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/9 11:49:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码