贪吃蛇学习笔记【C++】

    科技2022-07-10  112

    事情是这样的,我上的大学里有个和微软合作的俱乐部,面向大一招新的时候我去参加了一面,面试完ACM组又去了一下game组,结果就让我写一个贪吃蛇作为二面前的任务。

    这我也没写过啊,就只好搜了一下别人的源代码学习学习。我从这里找的源代码,但真正的作者是这位。

    一百多行的代码看下来,确实是学到了不少。

    首先是整体的算法思路。这里的方法简单直接,就是时间每过去一个特定值就前进一步,然后判断有没有撞到边界或自己或者吃到食物,如果吃到了食物就变长同时随机一个新的食物,当然食物不能长在蛇身上。

    直接判断时间差是我没预料到的,我以为会有一些更加高级更加方便的方法,但是又想到之前听说正规大作里的碰撞检测是每秒30次什么的,估计也是直接看时间差了,看来这种方法应该是游戏里常用的。

    然后就是实现细节了,这也是我学到的最多的东西。在这里放几个传送门,把我学到的一个一个说一下。

    获取句柄

    定位光标

    隐藏光标

    处理输入

    Processed: 0.021, SQL: 8