格子类 class Grid
成员数据 成员函数
是否有雷(有,没有)
bool bHasBomb;
设置变量值;
void setHasBomb(bool);
读取变量值;(是否有雷)
bool isHasBomb();
周围的雷数(0~8)
int iNeighborBombNums;
设置变量值;
void setNeighborBombNums ();
读取变量值;
int getNeighborBombNums();
格子的状态(翻开,未翻,标识)
enum STATUS {OPENED, CLOSED, SIGNED};
STATUS CurrentGridStat;
设置变量值;
status getCurrentGridStat();
读取变量值;
void setCurrentGridStat(status);
显示图标(’1’~’8’,’*’,’ ’,‘!’)
char cGridIcon;
根据是否有雷、周围雷数、格子状态确
定显示符号
void decideGridIcon();
返回显示图标
char getGridIcon();
棋盘类 class Panel
成员数据 成员函数
格子集合
Grid GridSet[SIZE][SIZE];
const int SIZE = 20;
在格子集合中随机部署地雷;
void arrangeBombs(int);
为每一个格子计算周围的雷数;
void calcNeighborBombNums();
设置一个格子的状态(翻开、标识);
void setGridStatus(int x, int y);
读取一个格子的图标;
char getGridIcon(int x, int y);
显示所有的格子;
void displayPanel();
判断游戏是否结束;(成功;失败;进
行中)
Enum GAMESTAT {SUCC, FAIL, ONGO};
GAMESTAT judgeGameStat();
翻开所有的格子,并显示;
void 9nal_displayPanle();
实际的地雷总数
int iBombNums;
设置地雷总数
void setBombNums(int);
读取地雷总数
int getBombNums();
被标记为雷的格子总数 读取变量