C#can';t声明Int:Field的公共双数组从未分配给,并且其默认值始终为null
我在这行上遇到一个错误:C#can';t声明Int:Field的公共双数组从未分配给,并且其默认值始终为null,c#,multidimensional-array,compiler-errors,C#,Multidimensional Array,Compiler Errors,我在这行上遇到一个错误: public int[]mySpiros 错误如下所示: 字段Spirograph.myList.mySpiros从未分配给,并且其默认值始终为null 现在这一行是在类中编写的。我只想创建一个双数组,这样我就可以存储用户生成的每个图形(螺旋图)的未来参数 编辑:似乎实例化多个整数数组并不是Microsoft最喜欢的操作: 这通常是一个警告,而不是错误。确保您没有在项目设置中设置“将警告视为错误”。右键单击project->Properties并设置: 确保将其设置为“
public int[]mySpiros代码>
错误如下所示:
字段Spirograph.myList.mySpiros从未分配给,并且其默认值始终为null
现在这一行是在类中编写的。我只想创建一个双数组,这样我就可以存储用户生成的每个图形(螺旋图)的未来参数
编辑:似乎实例化多个整数数组并不是Microsoft最喜欢的操作:
这通常是一个警告,而不是错误。确保您没有在项目设置中设置“将警告视为错误”。右键单击project->Properties并设置:
确保将其设置为“无”。这应该允许您构建和运行
请注意,此警告意味着您的代码永远不会创建此字段的实例,这反过来将生成空引用异常 您正在创建,因此需要实例化数组,如:
public int[][] mySpiros;
//create three reference variables to hold array references
mySpiros=new int[3][];
mySpiros[0]=new int[4];
mySpiros[1]=new int[] {11,22,33,44};
mySpiros[2]=new int[40];
你试过实例化数组吗?我试过public int[][]mySpiros=new int[50][]
(将索引放在第二个括号中会引发错误)put它仍然会显示警告,并在每次启动应用程序时弹出错误。您必须以这种方式实例化:public int[][]mySpiros=new int[3]{int[5],int[5],int[5]}因为我的数组不是固定长度的,所以我必须准备有1000多个数组。。。我需要实例化所有这些吗?是的,你必须。但如果您有1000个数组,我想它将在代码中的某个循环中完成。最重要的是,在代码中的某个时刻,它必须完成。否则,您将无法摆脱此警告,并且您的数组和/或(或)其部分子数组将等于null
。