在下面的例子中,我发现了一个奇怪的行为。
我正在初始化Complex的矩阵(使用System.Numerics
),为每个位置分配一个计数器值。
但在某个时刻,该程序会覆盖以前的单元格。
有什么错误,有任何数组限制? 似乎复杂类型的问题,有一个双数组,这不会发生。
有什么建议吗?
private static void Test()
{
Complex[,] m = new Complex[16400, 16400];
long count = 1;
for (int i = 0; i < 16400; i++)
{
for (int j = 0; j < 16400; j++)
{
m[i, j] = new Complex((double)count++, 0);
if (m[0,0] != 1)
Debug.Print(string.Format("({0},{1})> m[0,0] =" + m[0, 0].ToString(), i,j));
}
}
}