C# C关于列表实例和成员上下文的混淆
我不明白为什么会这样:C# C关于列表实例和成员上下文的混淆,c#,list,C#,List,我不明白为什么会这样: namespace ConsoleApp2 { public class NameList { public void NameListGo() { List<string> listofNames = new List<string>(); listofNames.Add("Frank"); } } } 但这会产生一个错误,在当
namespace ConsoleApp2
{
public class NameList
{
public void NameListGo()
{
List<string> listofNames = new List<string>();
listofNames.Add("Frank");
}
}
}
但这会产生一个错误,在当前上下文中找不到listofNames:
namespace ConsoleApp2
{
public class NameList
{
List<string> listofNames = new List<string>();
listofNames.Add("Frank");
}
}
在这种情况下,方法NameListGo的作用是什么。为了引用实例的属性,实例必须包含在方法中吗?我在一个漫长的周末开始学习C语言,如果这是一个新手问题,我很抱歉
要旨
这是因为listofNames.AddFrank;是一个说明,如您所见:
在C语言中,每个执行的指令都是在一个方法的上下文中执行的
如何让它工作
在第一个代码段中,listOfNames是一个局部变量
在第二个代码段中,将名称列为成员变量
更准确地说,在第二个代码片段listofNames中是NameList类的一个字段
请退房
总结
我推荐更多的教程,它会随着时间的推移变得清晰。祝你好运
要旨
这是因为listofNames.AddFrank;是一个说明,如您所见:
在C语言中,每个执行的指令都是在一个方法的上下文中执行的
如何让它工作
在第一个代码段中,listOfNames是一个局部变量
在第二个代码段中,将名称列为成员变量
更准确地说,在第二个代码片段listofNames中是NameList类的一个字段
请退房
总结
我推荐更多的教程,它会随着时间的推移变得清晰。祝你好运 在第二个例子中,你需要把你的代码放在构造函数或方法中。在第二个例子中,你需要把你的代码放在构造函数或方法中。非常感谢!这个答案非常清楚,非常有意义。非常感谢!这个答案非常清楚,很有道理。
public class NameList
{
//This is a field
List<string> listofNames = new List<string>();
public void Method() {
//You need a method to interact with listOfNames
listofNames.Add("Frank");
}
}