我目前正在将我的 java 游戏引擎翻译成 c#。这是我的数组映射数据
char[][] mapdata = new char[MAP_WIDTH][MAP_HEIGHT];
``````````
它显示了这个错误。
无效的排名说明符:预期为 ',' 或 ']' (CS0178) - C:\Users\sriharshachilakapati...ne\Map.cs:74,39
谢谢
我目前正在将我的 java 游戏引擎翻译成 c#。这是我的数组映射数据
char[][] mapdata = new char[MAP_WIDTH][MAP_HEIGHT];
``````````
它显示了这个错误。
无效的排名说明符:预期为 ',' 或 ']' (CS0178) - C:\Users\sriharshachilakapati...ne\Map.cs:74,39
谢谢
多维数组是这样写的:
char[,] mapdata = new char[width, height];
char[][]
是数组中的一个数组,这样使用:
char[][] mapdata = new char[width][];
for (int i = 0; i < mapdata.Length; i++)
{
mapdata[i] = new char[height];
}
您正在尝试定义一个multidimensional array
. 这是 C# 中的方法;
char[,] mapdata = new char[MAP_WIDTH, MAP_HEIGHT];
数组初始化格式不正确。指定数组维度时,您可以指定以下内容:
- 括号中的数字
- 空括号
- 括号中的逗号
您不能在编译时初始化锯齿状数组的子行。
你必须这样做:
char[][] mapdata = new char[MAP_WIDTH][];
for (int = 0; i < mapdata.Length; ++i)
mapdata[i]= new char[MAP_HEIGHT];
或者您可以改为使用多维数组:
char[,] mapdata = new char[MAP_WIDTH, MAP_HEIGHT];