看起来我没能理解引用和值类型列表背后的概念。
在这里,我想填充一个包含 30000 个 uint16 的数组,一次包含 125 个值。
完成后,我想将其添加到列表中并开始填充另一块 30000 个值。但是,我只存储对一个数组的引用。这是一个测试代码:
UInt16[] ND = new UInt16[30000];
OMD.Clear();
for (int i = 0; i < 30000; i++) ND[i] = (ushort)i;
OMD.Add(ND);
for (int i = 0; i < 30000; i++) ND[i] = 13;
OMD.Add(ND);
在第二个循环中,OMD 的第一个数组成员丢失了它的值并变为 13。