我尝试构造一个多维类(单元)的数组,但所有数组元素都定义为null
Unit[,] unitsvalue = new Unit[x, y];
我想将数组元素定义为new Unit();
答案 0 :(得分:2)
new Unit[x, y];
为元素的引用提供存储空间,但它本身并不构造元素。您需要在代码中单独分配它们:
for (int i = 0 ; i != x ; i++)
for (int j = 0 ; j != y ; j++)
unitsvalue[i,j] = new Unit();
这对于值类型的工作方式不同:如果您将Unit
设为struct
,则不需要两个循环。