C#未分配局部变量列表的使用 public结构Mp3spelerinfo { 公共字符串ID; 公共字符串制作; 公共字符串模型; 公共字符串大小; 公共字符串价格; }; //AANMAAK MP3SPELERS DMV结构 公共静态无效maakmp3speler() { 列表myArray; Mp3spelerinfo speler1; speler1.ID=“1”; speler1.Make=“GET technologies.inc”; speler1.Model=“HF 410”; speler1.MBSize=“4096”; speler1.Price=“129.95”; myArray[0]=speler1; }
我该怎么做才能避免这种情况发生? 我所做的是试图得到一个列表,以便我可以使用。添加,使事情更容易。C#未分配局部变量列表的使用 public结构Mp3spelerinfo { 公共字符串ID; 公共字符串制作; 公共字符串模型; 公共字符串大小; 公共字符串价格; }; //AANMAAK MP3SPELERS DMV结构 公共静态无效maakmp3speler() { 列表myArray; Mp3spelerinfo speler1; speler1.ID=“1”; speler1.Make=“GET technologies.inc”; speler1.Model=“HF 410”; speler1.MBSize=“4096”; speler1.Price=“129.95”; myArray[0]=speler1; },c#,C#,我该怎么做才能避免这种情况发生? 我所做的是试图得到一个列表,以便我可以使用。添加,使事情更容易。 myArray[0]是错误所在。在执行任何其他操作之前,您需要实际创建一个新列表: public struct Mp3spelerinfo { public string ID; public string Make; public string Model; public string MBSize;
myArray[0]是错误所在。在执行任何其他操作之前,您需要实际创建一个新列表:
public struct Mp3spelerinfo
{
public string ID;
public string Make;
public string Model;
public string MBSize;
public string Price;
};
//AANMAAK MP3SPELERS DMV STRUCT
public static void maakmp3speler()
{
List<Mp3spelerinfo> myArray;
Mp3spelerinfo speler1;
speler1.ID = "1";
speler1.Make = "GET technologies .inc";
speler1.Model = "HF 410";
speler1.MBSize = "4096";
speler1.Price = "129.95";
myArray[0] = speler1;
}
您可能还应该避免调用列表myArray1
。这不是一个数组,而是一个列表。区别很重要。如果您没有更具意义的名称,那么最好直接将其命名为myList
我还强烈建议您将
Mp3spelerinfo
更改为类
,而不是结构
。它在概念上并不代表一个单一的值,如果你对C#的很多细节不太熟悉,那么处理可变结构就是一场噩梦。在这里使用struct
会有很多损失,但实际上没有什么好处。进行更改时,需要使用new Mp3spelerinfo()显式初始化speler1
以创建它的实例。类不是像结构那样隐式初始化的。您还没有初始化列表…还有,这一行:mp3speerinfo speler1
需要更改为Mp3spelerinfo speler1=new Mp3spelerinfo()代码>@CharlieKilian不,没有。这是一个结构。哦!你说得对。我没有引起足够的注意。我以为这是一门课。对不起。
List<Mp3spelerinfo> myArray = new List<Mp3spelerinfo>();
myArray.Add(speler1);