C# 如何更改c中全局声明变量的值#
如何将a的值更改为10当在同一范围内有一个全局变量(字段)和一个局部变量(参数/局部)具有相同的名称时,编译器将自动选择本地声明的变量 在处理非静态(实例引用)字段时,仍然可以使用C# 如何更改c中全局声明变量的值#,c#,C#,如何将a的值更改为10当在同一范围内有一个全局变量(字段)和一个局部变量(参数/局部)具有相同的名称时,编译器将自动选择本地声明的变量 在处理非静态(实例引用)字段时,仍然可以使用this关键字访问该字段。例如: public int a; public void currentvalue(int a) { if (a == 5) { a = 10; Console.WriteLine("
this
关键字访问该字段。例如:
public int a;
public void currentvalue(int a)
{
if (a == 5)
{
a = 10;
Console.WriteLine("a" + a);
}
}
如果全局声明的变量是静态的,则不能使用this
(它仅在实例引用上可用)。在这种情况下,请改用类型引用:
public class MyClass
{
public int number = 2;
public void Calc(int number) //when number: 4
{
int result1 = number * 3; //result1: 12
int result2 = this.number * 3; //result2: 6
}
}
您可能需要阅读
此
关键字。您可以使用ref关键字并将引用传递到函数:
public class MyClass
{
public static int number = 2;
public void Calc(int number) //when number: 4
{
int result1 = number * 3; //result1: 12
int result2 = MyClass.number * 3; //result2: 6
}
}
首先,我声明变量a,比如公共int a;使用
this
关键字maybe。。。不要用无用的字母命名变量和参数?使用有意义的命名。谢谢你的签名。你能解释一下它是如何实现的吗。我在您的帖子中得到了预期的答案,并进行了解释。很高兴为您提供帮助,欢迎来到Stack Overflow。如果此答案或任何其他答案解决了您的问题,请将其标记为已接受。
public void currentvalue(ref int a)
{
if (a == 5)
{
a = 10;
Console.WriteLine("a" + a);
}
}