所以我有一个叫做方向的枚举;
enum direction
{
right,
down,
cross,
mmcross,
};
我有一个名为dir的二维方向矩阵;
direction[,] dir;
问题是当我尝试在像
这样的循环中为方向矩阵的成员分配方向时 dir[i, j] = direction.right;
或
direction right = new direction();
dir[i, j] = right;
编译器返回“对象引用未设置为对象实例”异常。顺便说一下,我已经为矩阵的所有成员打开了空间;
for (int i = 0; i <= dataGridView1.Rows.Count - 1; i++)
{
for (int j = 0; j <= dataGridView1.Columns.Count - 1; j++)
{
dir[i, j] = new direction();
}
}
所以,我错过了什么,和/或误解,任何帮助都将不胜感激,谢谢。
另外,我忘了提一下,我确实定义了数组的界限;
direction[,] dir = new direction[dataGridView1.Rows.Count, dataGridView1.Columns.Count];
答案 0 :(得分:2)
您没有创建二维数组的实例;你只定义它。
使用new
关键字创建二维数组:
direction[,] dir = new direction[dataGridView1.Rows.Count, dataGridView1.Columns.Count];