当我不知道元素的确切数量时,我有一个关于在C#中创建数组的问题。我发现了多个相似的问题,例如this one。建议使用List而不是Array。在该示例中以及在所有其他示例中,我已经看到它实例化了一个'字符串列表。我可以用结构做同样的事吗?
例如,我有以下用于存储故障信息的结构,但我不知道在测试开始时会发生多少次故障。它可能是0,可能是数百。
public struct EraseFailures
{
public string timestamp;
public string bus;
public string channel;
public string die;
public string block;
}
那么我也可以创建这些列表吗?
List<EraseFailures> eFails = new List<EraseFailures>();
它编译得很好,但我想确保这是最好的方法。如果是,将值添加到我的列表的语法是什么?因为以下看起来并不正确......
eFails.bus.Add("bus0");
似乎我可能必须使用我想要的值创建一个新结构,然后将其添加到List中。
答案 0 :(得分:5)
如果我确实理解了你,你就会问如何使用键入的List
...
像这样使用它:
//init list
List<EraseFailures> fails = new List<EraseFailures>();
//make instance of EraseFailuers struct
EraseFailures f = new EraseFailures();
//add data
f.bus = "bus01";
f.channel = "somechannel";
//etc
fails.Add(f);