Tag: array initialize

当您不知道大小时,如何初始化二维数组

我有一个二维数组,我需要加载数据。 我知道数据的宽度(22个值),但我不知道高度(估计大约4000条记录,但变量)。 我声明如下: float[,] _calibrationSet; …. int calibrationRow = 0; While (recordsToRead) { for (int i = 0; i < SensorCount; i++) { _calibrationSet[calibrationRow, i] = calibrationArrayView.ReadFloat(); } calibrationRow++; } 这会导致NullReferenceException,所以当我尝试像这样初始化它时: _calibrationSet = new float[,]; 我得到一个“数组创建必须有数组大小或数组初始化程序。” 谢谢,基思

如何动态设置c#中的数组长度

我还是C#的新手,我一直在努力解决arrays上的各种问题。 我有一组元数据对象(名称值对),我想知道如何只创建我真正需要的“InputProperty”对象的数量。 在这个循环中,我任意设置元素的数量为20,当条目变为null时我试图挽救但是接收端的Web服务不喜欢传递给它的任何null元素: private Update BuildMetaData(MetaData[] nvPairs) { Update update = new Update(); InputProperty[] ip = new InputProperty[20]; // how to make this “dynamic” int i; for (i = 0; i < nvPairs.Length; i++) { if (nvPairs[i] == null) break; ip[i] = new InputProperty(); ip[i].Name = "udf:" + nvPairs[i].Name; ip[i].Val = nvPairs[i].Value; } update.Items = […]

使用默认构造函数初始化数组

public class Sample { static int count = 0; public int abc; public Sample() { abc = ++Sample.count; } } 我想创建一个上面的类数组,并希望通过调用默认构造函数来初始化数组中的每个元素,这样每个元素都可以有不同的abc 。所以我这样做了: Sample[] samples = new Sample[100]; 但这并不符合我的想法。 这似乎是默认构造函数没有被调用。 如何在创建数组时调用默认构造函数? 我也想知道上面的陈述是做什么的?