【发布时间】:2015-02-02 12:54:33
【问题描述】:
class City
{
string name;
public string getName()
{
return name;
}
public void setName(String value)
{
name = value;
}
}
static void Main(string[] args)
{
City[] arr = new City[1];
arr[0].setName("New York");
}
问题是我得到“System.NullReferenceException”,“对象引用未设置为对象的实例。”在我将名称设置为纽约的那一行。如果我这样做:
City city = new City();
city.setName("New York");
我没有收到任何错误,但我想使用数组,因为我将添加更多对象。这在 C# 中是否可行,因为它在 C++ 中?是声明 5 个对象、设置它们的名称然后创建一个数组并将它们放入其中的唯一方法吗?
【问题讨论】:
-
你定义了数组,但你也必须初始化对象
-
对于副本,请参阅
Array和Array Elements部分。 -
附带说明,您应该考虑使用
Nameproperty 而不是getName和setName方法。