2011-12-26 73 views
3

我有以下代码:阵列结构的返回错误

static int gridX = 40; 
static int gridY = 40; 

public struct CubeStruct 
{ 
    public Transform cube; 
    public bool alive; 
    public Color color; 
} 

public CubeStruct cubeArray[,] = new CubeStruct[gridX, gridY]; 

这将返回以下错误:

错误CS1519:意外符号',”在类,结构或接口 构件声明

错误CS0178:无效的秩说明符:预计,' or]”

错误CS1519:意外符号`;'在类,结构或接口中 成员声明

这可能是显而易见的,但我看不到它。

回答

5

在C#中,[,]在变量的名称之前(即,它不像在C/C++中)。

public CubeStruct[,] cubeArray = new CubeStruct[gridX, gridY]; 
+0

我很惭愧,我错过了它..谢谢! – 2011-12-26 12:23:51

5
public CubeStruct cubeArray[,] = new CubeStruct[gridX, gridY]; 

应该是:

public CubeStruct[,] cubeArray = new CubeStruct[gridX, gridY]; 
2

变化:

public CubeStruct cubeArray[,] = new CubeStruct[gridX, gridY]; 

到:

public CubeStruct[,] cubeArray = new CubeStruct[gridX, gridY]; 
+0

,现在它已经修复了。 – 2011-12-26 12:27:14

3

在C#中,没有任何东西可以在类型之外浮动。所以你需要这样做:
另外请注意,[,]在类型之后,而不是在标识符之后。

public class GridMain 
{ 
    static int gridX = 40; 
    static int gridY = 40; 
    public CubeStruct[,] cubeArray = new CubeStruct[gridX, gridY]; 

} 

public struct CubeStruct 
{ 
    public Transform cube; 
    public bool alive; 
    public Color color; 
} 
+0

+1的解释:) – TheBoyan 2011-12-26 12:24:50

+0

当然,我的代码是在一个类。我只是复制/粘贴相关位。 – 2011-12-26 12:25:07

+1

当然,这是不明确的你的问题。感谢澄清。 – Adam 2011-12-26 12:25:30