本程序由三个文件组成,简单易懂,用于巩固c++知识点和学习API函数有一定的帮助。喜欢收藏、点赞、评论三连哦。
下载链接:https://download.youkuaiyun.com/download/ganyonjie/11431277 欢迎下载
1.Snake_Class.h文件
#pragma once
#ifndef SNAKEHEAD
#define SNAKEHEAD
#include <iostream>
#include <conio.h>
#include <windows.h>
#include <vector>
#include <ctime>
/*框架相关常量-框架开始坐标、框架高度、框架宽度*/
enum Fream { FREAM_STARTX = 0, FREAM_STARTY = 0, FREAM_HIGHT = 20, FREAM_WIDTH = 80 };
/*游戏相关常量-速度、蛇初识长度、蛇开始位置、结束位置*/
enum Game { SPEED = 1000 / 10, SNAKE_INITSIZE=3, STARTX = 10, STARTY = 10 };
/*方向-上、下、左、右*/
enum DIRECTION { UP, DOWN, LEFT, RIGHT, CENTER };
/*蛇类*/
class Snake {
private:
std::vector<COORD> position;//位置,存放蛇的位置
COORD food;//食物
unsigned short int length;//蛇长度
unsigned short int direction;//蛇方向
unsigned int score;//得分
public:
Snake();//构造函数
~Snake();//析构函数
void Move();//移动
bool Check(int x, int y);//检查蛇是否撞墙
void Fream();//游戏框架
void Init();//初始化游戏
};
#endif
2.Snake_Class.cpp文件
#include "Snake_Class.h"
using namespace std;
HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);//获取标准输出设备的句柄
_CONSOLE_CURSOR_INFO CursorInfo;//隐藏光标未实现
void GotoXY(HANDLE hOut, int x, int y) {//定位光标函数
COORD pos;
pos.X