我有一个枚举类“ Figure”和脚本:
public enum Figure { X, O }
private Figure[,] board = new Figure[boardSize, boardSize];
Run Code Online (Sandbox Code Playgroud)
当板上没有任何值时,我要向板上添加空值。示例:
board[0,0] = null-但这是错误的。我该怎么做?
枚举是值类型,因此null不是有效值。
这是此问题的两种解决方案:
添加一个新的枚举值:
public enum Figure { Empty, X, O }
Run Code Online (Sandbox Code Playgroud)您现在可以使用Figure.Empty代替null。
使用可为空的类型:
private Figure?[,] board = new Figure[boardSize, boardSize];
Run Code Online (Sandbox Code Playgroud)一会儿?就Figure可以使用了null。