[英]Why am I getting an object reference error on my List<> object?
我有一個名為StartingUserInterface
的類,它有一個Teams
列表,如下所示:
public class StartingUserInterface
{
public List<Team> Teams = new List<Team>();
public static string PlayerName;
AddPlayer();
}
在同一個類中的方法中,我試圖通過首先在Teams
列表中找到團隊,然后將玩家的名稱設置為該Teams
,將用戶指定的玩家名稱添加到用戶指定的團隊:
public static void AddPlayer()
{
PlayerName = Console.ReadLine();
Team team = new Team();
team.Name = Console.ReadLine();
team = Teams.Find(x => x.Name == team.Name);
team.AddPlayer(PlayerName);
}
以下是Team
類的片段:
public class Team
{
public string Name;
public void AddPlayer(string name)
{
Player Player = new Player()
{
Name = name;
};
}
我得到的錯誤消息說
“非靜態字段,方法或屬性'StartingUserInterface.Teams'需要對象引用
...當我嘗試將團隊列表項設置為團隊對象時: team = Teams.Find(x => x.Name == team.Name);
在AddPlayer()方法中。 我做錯了什么嗎? 在我看來,它說List對象不存在,但我在類的開頭創建了它的一個實例。
您不能在靜態方法中使用非靜態字段,因此您應該使Teams
List成為靜態變量。
你的
public List<Team> Teams = new List<Team>();
變
public static List<Team> Teams = new List<Team>();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.