C#实现的中国象棋程序开发笔记2011-06-26 博客园 周利华最近,和朋友下象棋,然后想到这个多年陈旧的代码(这些代码有些参考了网络的一些帖子),曾经因为不知道如何实现人机对战而放弃继续研究。如今,这位朋友,给了我又重新找回来的兴趣,所以来这里请大家帮忙,如何实现人机对战,让电脑自动下呢?当前,已经完成黑、红两方的下棋规则,但是还没有实现人机对战,目前只能人人对战,也就是说一个具有下棋规则的棋盘而已。为了方便大家给我出招解惑,我先说一下自己程序的原理:1, 32个棋子都是具体的类,并都是继承于ChessWorldBase。棋子基类using System; using System.Collections; using System.Windows.Forms;
namespace Zivsoft.Business.Chess { /// <summary> /// 棋子 /// </summary> internal abstract class ChessWordBase:IChess { public const int XBoardLength = 9; public const int YBoardLength = 10; public static ArrayList All = new ArrayList();