解决未分配变量错误使用的最佳方法是什么?以下代码包含错误:
string[] Names;
Countries.Keys.CopyTo(Names, 0);
这里Countries
是类型Dictionary<string, string>
。Names
数组出现错误。
解决未分配变量错误使用的最佳方法是什么?以下代码包含错误:
string[] Names;
Countries.Keys.CopyTo(Names, 0);
这里Countries
是类型Dictionary<string, string>
。Names
数组出现错误。
您需要创建一个空数组将值复制到:
string[] Names = new string[Countries.Keys.Count];
Countries.Keys.CopyTo(Names,0);
如果你可以使用 LINQ,你可以这样做
string[] names = Countries.Keys.ToArray();
假设国家集是一个字典,例如:
string[] names = new string[countries.Count];
关于 .NET 编码约定,局部变量和私有类型成员的标题应为驼峰式,因此使用“名称”而不是“名称”和“国家”而不是国家,假设国家不是属性。
最好使用默认构造,如果可能的话,在初始化一些变量时使用一些它的初始值:
例如:
var x = default(int);
在你的情况下,它可能是
string[] s = default(string[]);
编辑
考虑到已编辑的问题,您必须正确进行初始化,因为default
reference-type 的值会返回null
,在您的特定情况下,这会产生异常。
所以只需像这样初始化它:
string[] s= new string[Countries.Keys.Count];
您必须初始化数组来克服这个问题:
string[] Names = new string[Countries.Keys.Count];