如何重新初始化数组?
public int[] numbers;
在我的情况下,numbers
将设置一个未知长度的数组。例如,当我首先使用它时,它将有8个元素,下一次只有5个,然后是12个。
我读了一些关于这个主题的内容,发现只有一个相关: http://social.msdn.microsoft.com/Forums/en-US/bee99ac8-4ade-40ac-aa78-8d14d1d7bf9f/c-reinitialize-arrays?forum=csharplanguage
即使我不关心重新声明(uhh)的内存使用情况,我也不能这样做,因为我将在计时器的厚方法中使用该数组,并将使用相同的数组,直到计时器停止。然后再次调用该函数,这会将元素放入数组中,然后再次启动计时器。
修改
我的案例中有3个函数,数组声明为公共变量。第一个函数叫做doAction(),它调用另一个返回未知长度数组的函数。然后,doAction启动timer1(thick方法),它需要从doAction到达数组。这就是我使用全局变量放入数组的原因。
答案 0 :(得分:1)
当然你可以这样做。您无法更改数组的大小。当您停止Timer
时,只需创建一个新数组并将其分配给同一个变量。重要的是变量。您将从Tick
事件处理程序中的变量中获取数组,这样您将始终获得当前数组。
答案 1 :(得分:0)
首先使用它时,请执行
numbers = new int[5];
再次使用时,请执行
numbers = new int[12];
如果不是那么简单,那么你没有很好地解释你的问题。