2013-04-09 464 views
1

我试图创建一个三层次的锯齿状排列。初始化三级锯齿状排列,出现错误“嵌套数组初始化预计”

这里是我的代码:

int[][, ,][,] x = new int[1][, ,][,]{ 
       new int[1,1,1][,] { 
        new int[7,8] 
       } 
      }; 

我得到这个错误:A nested array initializer is expected

我在做什么错?

+5

哇,你有什么需要这样一个讨厌的阵列? – JustAnotherUserYouMayKnow 2013-04-09 12:54:47

+1

我只是好奇,想看看阵列多么复杂可制成。 – user2108462 2013-04-09 12:57:40

回答

2

考虑一下了[,,]一个初始的模样。例如:

int[,,] arr = {{{1}}}; 

因此,你需要的是更象:

int[][, ,][,] x = new int[1][, ,][,]{ 
     new int[1,1,1][,] {{{new int[7,8]}}} 
    }; 

甚至只是:

int[][, ,][,] x = { 
     new int[1,1,1][,] {{{new int[7,8]}}} 
    }; 
+0

谢谢你,代码工作,但我不明白为什么我要使用额外的支架。 – user2108462 2013-04-09 12:55:18

+0

哦!我现在知道了。 – user2108462 2013-04-09 12:59:20

+0

@ user2108462 [因为那是语言说什么(http://msdn.microsoft.com/en-us/library/aa664573(V = vs.71)的.aspx)。 2×2阵列的INT-阵列将是'{{1,2},{3,4}}',例如;一个2x2x2将是'int [,,] arr = {{{1,2},{3,4}},{{5,6},{7,8}}};' – 2013-04-09 13:00:22