发布网友 发布时间:2024-10-18 22:34
共1个回答
热心网友 时间:2024-11-07 03:51
你的定义方式的问题,int[,,]是传统三维数组,并不能通过data[0]的方式取得第一维的二维数组,要达到你想要的效果应该使用交错数组定义
int[][][] data = new int[][][]
{
new int[][]{
new int[]{0,0,0,0},
new int[]{0,0,1,1},
new int[]{0,1,0,0},
new int[]{0,0,0,0},
},
new int[][]{
new int[]{0,1,0,0},
new int[]{0,1,0,0},
new int[]{0,0,0,0},
new int[]{1,0,0,0},
},
};
private void CopyData(int[][] desc, int[][] src)
{
for (int i = 0; i < src.Length; i++)
{
for (int j = 0; j < src[i].Length; j++)
{
desc[i][j] = src[i][j];
}
}
}
另外拷贝数组应该使用Array.Copy最好,是经过优化的拷贝,效率高