在一个语句中初始化多个变量会导致NullReferenceException

Mod*_*odS 1 c# nullreferenceexception

我试图在列表中嵌套对象列表; 我尝试过以下方法:

实例:

  public static List<PhonePeople> Helpdesk, Admins = new List<PhonePeople>();
  public static List<List<PhonePeople>> PDepartments = 
          new List<List<PhonePeople>>{Helpdesk,Admins};
Run Code Online (Sandbox Code Playgroud)

尝试添加到帮助台列表,如下所示:

 MainWindow.PDepartments[counter].Add(thisPerson);
Run Code Online (Sandbox Code Playgroud)

错误:

"你调用的对象是空的"

我将counter定义为0,0是帮助台的索引.Mainwindow是静态列表所在的位置.我相信我的列表清单或我添加的方式存在问题;

怎么了?

Jef*_*der 6

你的行public static List<PhonePeople> Helpdesk, Admins = new List<PhonePeople>();只是实例化Admins而不是HelpDesk

  • 不,这会将变量指向同一个对象,您需要为每个对象引用一个单独的实例,因此您需要两个 `new` 语句。 (2认同)