分配给枚举矩阵c#

时间:2014-04-07 12:27:44

标签: c# matrix reference enums

所以我有一个叫做方向的枚举;

    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];

1 个答案:

答案 0 :(得分:2)

您没有创建二维数组的实例;你只定义它。 使用new关键字创建二维数组:

direction[,] dir = new direction[dataGridView1.Rows.Count, dataGridView1.Columns.Count];