C#静态变量、局部变量、全局变量、成员变量的区别及使⽤⽅法static修饰的变量
局部变量:作⽤域在函数内部,函数执⾏结束,变量占⽤的内存会在垃圾回收机制中回收
全局变量:作⽤域在整个类中项⽬中,使⽤前需要进⾏实例化,分配内存空间
成员变量:定义在类中的变量
静态变量:⽤statics修饰的变量,通过类名进⾏调⽤,不会随着类的多次实例⽽改变其值,只记录最后⼀次的值,静态函数只能调⽤静态变量,静态变量可以被静态函数、⾮静态函数调⽤
因为C#中没有直接声明全局变量的⽅法,左移我们可以在⼀个类中实现静态属性(字段)和静态⽅法,以此达到C或C++中全局变量和全局函数的效果。
public static class GlobalFunAndVars
{
//全局变量
public static int Number {get;set;}
public static float Value;
//全局函数
public static float GetValue()
{
return Value;
}
public static void SetNumber(int number)
{
Number = number+1;
}
}
public class MyForm
{
public void test()
{
//相当于使⽤“全局变量”
GlobalFunAndVars.Number =100;
int x = GlobalFunAndVars.Number;
GlobalFunAndVars.Value =3.14f;
float v = GlobalFunAndVars.Value;
//相当于使⽤“全局函数”
float y = GlobalFunAndVars.GetValue();
GlobalFunAndVars.SetNumber(200);
}
}
说明:
严格地说在C#中没有全局函数和全局变量的概念。但是,可以通过类的静态成员(静态属性,静态⽅法,静态字段)来“模拟”全局变量和全局函数。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论