日期:2014-05-18  浏览次数:20908 次

c#中的static变量是不是应该按照全局变量来理解
只要程序运行,static变量一直存在??
是吗

------解决方案--------------------
是的。。。

C#里面没有全局变量的说法,不过你可以把它当面全局变量来理解。。。
------解决方案--------------------
static 变量存在于代码段,只要能访问代码段,就能访问静态变量,所以相当于全局变量
------解决方案--------------------
static变量只在第一次使用时才初始化(可能早于也可能晚于Main函数).c中的全局变量存在早于main函数.
static有修饰限定词,全局变量无.
static的机制复杂得多,其初始化次序有可能引起竞争问题(比如两个类的static成员的初始化都依赖对方时),全局变量不存在这些问题.

但是对于较多场合,public static 与 全局变量 使用效果差不多.