Skip to content

gitcpplinue/CppSimpleProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

使用Visual Studio,为了方便管理,将D:\...\项目\项目中的代码存入src目录中。只记录源代码。

daily_active

仅用于熟悉控制台界面的编辑

typing_game

需要用到MySQL,在百度随便找了一篇文章做参考进行环境配置。

原项目来源https://www.51zxw.net/Show.aspx?cid=717&id=78854

一款打字游戏,随机生成字母下落,消除字母得分,字母落地扣血。有3种难度可选。

对教程的代码进行了修改、优化,增加了一些功能:

  • 每个字母容器都在尾部插入、头部删除,且要对容器进行遍历,所以将LetterShower类的成员变量m_letters从vector容器改为deque容器

  • Menu类用于管理光标位置和字体颜色;

  • Health类管理血量;

  • LetterShower类管理字母的生成、下落和计分。

  • Record类将每次游玩的得分和时间记入.type_game_record文件中,得分为0的结果不保存。

  • 绘制界面的工作改由main.cpp中的全局函数来完成。

  • 增加了MyDB类用于管理MySQL数据库的连接、插入、查询操作。

增加了排名界面,可显示玩家的历史得分、最高分。每一页最多显示13条记录,在数据库的支持下,实现了翻页,按分数升序/降序、按日期升序/降序排列数据的功能。

72,75,77,80并不是按键的ASCII码而是按键的扫描码,键盘上的按键按下后会有2个字节的数据,低八位存ASCII码,高八位存按键扫描码。所以使用_getch()函数接收方向键的值会先得到-32。

About

简单的C++项目,练手

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages