📄 chessboard.h
字号:
#ifndef CHESSBOARD_H_H_TOYASIMPLE
#define CHESSBOARD_H_H_TOYASIMPLE
enum states{ black, white, blank }; // 棋盘格子的三种状态 黑,白,空
const unsigned int size=15; // 棋盘大小,正规为15*15
struct point
{
point() { x=1; y=1; };
point( int a, int b) { x=a; y=b; };
int x;
int y;
};
class chessboard
{
public:
chessboard();
~chessboard();
void outputStates() const;
void updateMarks(states chessmanColor);
void renew();
void setGridState(const point& pt, states gridState);
states getGridState( const point& pt);
void getMaxGridMark( point& pt ) const;
private:
states m_gridState[size][size]; // 棋盘各个格子的状态
//分black white blank
int m_gridMark[size][size]; // 棋盘各个格子的分数
void initiGridMark();
void updateGridMark(const point& pt, states chessmanColor);
};
#endif
// Member Function/Date Explanation
// 函数名: outputStates
// 访问权限: public
// 功能: 根据棋盘状态输出棋盘, 黑棋|白棋|空分别用'#'|'O'|' '表示
// 参数: void
// 返回值: void
//函数名: updateMarks
// 访问权限: public
// 功能: 更新棋盘各个格子的分数
// 参数: states chessmanColor, 选手的棋子颜色,分black,white
// 返回值: void
// 函数名: renew
// 访问权限: public
// 功能: 重新初始成员数据的值
// 参数: void
// 返回值: void
// 函数名: setGridState
// 访问权限: public
// 功能: 设置棋盘上的一个格子的状态,分black white blank
// 参数: point pt, 坐标点,用来指示要设置哪个格子
// states gridState 格子状态
// 返回值: void
// 函数名: getGridState
// 访问权限: public
// 功能: 得到棋盘上的一各格子的状态,分black white blank
// 参数: point pt 坐标点,指哪个格子
// 返回值: states 格子状态
// 函数名: getMaxGridMark
// 访问权限: public
// 功能: 得到棋盘分数最大的格子
// 参数: point pt 得到格子所在的坐标点
// 返回值: void
// 函数名: initiGridMark
// 访问权限: private
// 功能: 初始棋盘上各个格子的分数
// 参数: void
// 返回值: void
// 函数名: updateGridMark
// 访问权限: private
// 功能: 更新棋盘单个格子的分数
// 参数: point pt 坐标点,指示那个格子
// states chessmanColor 选手的棋子颜色,分black,white
// 返回值: void
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -