ChineseChess.Core/ChessboardPosition.cs
(完整代码) 1KBnamespace ChineseChess.Core
{
public struct ChessboardPosition
{
public int Col;
public int Row;
public ChessboardPosition(int col, int row)
{
Col=col;
Row=row;
}
public override bool Equals(object obj)
{
return obj is ChessboardPosition pos
&& pos.Col == this.Col
&& pos.Row == this.Row;
}
public override int GetHashCode()
{
return Col ^ Row;
}
public override string ToString()
{
return $"({Row}, {Col})";
}
public static bool operator ==(ChessboardPosition left, ChessboardPosition right)
{
return left.Equals(right);
}
public static bool operator !=(ChessboardPosition left, ChessboardPosition right)
{
return !(left==right);
}
public static ChessboardPosition operator +(ChessboardPosition left, ChessboardPosition right)
{
return new ChessboardPosition(left.Col + right.Col, left.Row + right.Row);
}
public static ChessboardPosition operator -(ChessboardPosition left, ChessboardPosition right)
{
return new ChessboardPosition(left.Col - right.Col, left.Row - right.Row);
}
public static ChessboardPosition Zero => new ChessboardPosition();
}
}
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
