gpt4 book ai didi

c# - 用另一个相关问题编辑了这个问题。请帮助 : Can I use the same variable names for several methods of a class?

转载 作者:太空宇宙 更新时间:2023-11-03 22:11:55 27 4
gpt4 key购买 nike

感谢大家的回答。我遇到的一个问题是,当我在 Helpdesk 和 IT 方法中打印每个变量的值时,它不会打印“help”、“hellp123”和“Welcome Helpdesk!”。而是打印“admin”、“admin”和“Welcome”。方法 IT 的情况相同。

public class Login
{
public string[] array = new string[3];
public string UserName;
public string Password;
public string Message;
}

public Login
{
UserName = array[0] = "admin";
Password = array[1] = "admin";
Message = array[2] = "Welcome";

}

public void Helpdesk
{
UserName = "help";
Password = "help123";
Message = "Welcome Helpdesk!";
Console.WriteLine(UserName); //still prints admin
Console.WriteLine(Password); // still prints admin
Console.WriteLine(Message); // still prints Welcome
}
public void IT
{
UserName = "it";
Password = "Pa$$w0rd";
Message = "Welcome IT!";

}

我可以使用相同的变量名称:UserName、Password 和 Message 方法:Helpdesk 和 IT 用于同一个类 Login,如下所示?
公开课登录 { 公共(public)字符串[]数组=新字符串[3]; 公共(public)字符串用户名; 公共(public)字符串密码; 公共(public)字符串消息;

public Login
{
UserName = array[0] = "admin";
Password = array[1] = "admin";
Message = array[2] = "Welcome";
}

public void Helpdesk
{
UserName = "help";
Password = "help123";
Message = "Welcome Helpdesk!";
}
public void IT
{
UserName = "it";
Password = "Pa$$w0rd";
Message = "Welcome IT!";

}

最佳答案

你说的变量是类中的字段。仅限于该类。如果您创建具有相同名称的新变量,但不在同一个类中(就像您上面所做的那样),那是允许的。如果你在类里面这样做,它会影响场,这被认为是一种不好的做法。

注意:如果您仅从类内部分配给该字段(就像您可能在问题中暗示的那样,但代码不完整),您只需更改其值即可。

public class Login
{
public string Message;
public string Name;


public void Test()
{
Message = "Welcome"; // changes field, same as this.Message = ...
var Name = "Me"; // does not change field, hides field Name
}

}

关于c# - 用另一个相关问题编辑了这个问题。请帮助 : Can I use the same variable names for several methods of a class?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6332433/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com