对坦克大战情有独钟是因为大学时候第一次参加程序设计比赛就做的这个游戏。当时用的语言是Java,那个比赛让我悟出了面向对象的强大之处,我也是从那时开始接触设计模式的。对我而言,坦克大战有着非同寻常的意义,所以一定要带大家用C++实现一下。
我们依然使用EasyX在控制台程序中制作这个游戏程序。这一篇的主要任务是在屏幕上画出一个白色的主战坦克,可以通过方向键控制它的前进方向。效果如下:
下面我们正式开始。
画布类
在这个工程中,我们将EasyX画布相关的功能封装在一个Graphic类中,创建两个文件:Graphic.h和Graphic.cpp。
Graphic.h
#ifndef __GRAPHIC_H__
#define __GRAPHIC_H__
#include
#define SCREEN_WIDTH 1024
#define SCREEN_HEIGHT 768
class Graphic
{
public:
static void Create;
static void Destroy;
static int GetScreenWidth;
static int GetScreenHeight;
private:
static int m_screen_width;
sta