我想创建一个用类定义的“ Highscore”对象数组。
尝试设置或读取特定数组内容的值时,总是会收到NullReferenceException。
当我使用单个Highscore对象而不是Array时,它确实起作用。
当我使用整数数组而不是Highscore数组时,它也可以工作。
码
class Highscore
{
public int score;
}
class Program
{
static void Main()
{
Highscore[] highscoresArray = new Highscore[10];
highscoresArray[0].score = 12;
Console.WriteLine(highscoresArray[0].score);
Console.ReadLine();
}
}
System.NullReferenceException:
highscoresArray []为空。
最佳答案
在此代码中:
Highscore[] highscoresArray = new Highscore[10];
您实例化一个Highscore对象数组,但没有实例化该数组中的每个对象。
你需要然后做
for(int i = 0; i < highscoresArray.Length; i++)
highscoresArray[i] = new Highscore();