[toc] 基于QT的中国象棋实现(C++) task list 完成人机对战 完成人机对战难度调整 完成人人对战(非网络协议) 进阶任务完成:α,β博弈树搜索 实现思路 棋盘绘制,由简单的横竖线交错绘制棋盘 棋子类:通过class 虚基类进行定义,对应每一个旗子都有相应的重写函数:run,check,kind 鼠标事件的捕捉:通过鼠标点击 mouse_clicked()进行得到鼠标像素点,然后进行范围判断 判断红黑旗子,由全局变量 kind,得到当前棋手 博弈树实现 dfs做为实现基础 通过dfs1,dfs2双重判断,得到全局优先级判优(具体内容查看项目代码)