有什么理由这样实现的,为什么我不能申报为什么我不能宣布里面静态Main方法静态变量在C#
class Defaultclass
{
static void Main(string[] args)
{
static int x=5;
}
}
抛出编译错误
有什么理由这样实现的,为什么我不能申报为什么我不能宣布里面静态Main方法静态变量在C#
class Defaultclass
{
static void Main(string[] args)
{
static int x=5;
}
}
抛出编译错误
它的背后因为静态变量在类的所有实例中共享它的值。
现在你在做什么,你正在定义一个变量在函数中。函数级变量在函数级编译和执行。因此静态不能在函数级声明。
我不知道你在做什么,但你可以使用const或只读。 但是,它无法取代静态的意思。
所以回到函数内的静态变量的位置。这是它在编译语言级别定义的方式。
它在C++中可能是有意义的,但在C#中,设计者显然认为这不是特别值得放入该语言。
对于类似的效果,您可以将声明移至类作用域。 (虽然它可以从班级的所有方法访问,但不仅仅是你想要的那个。)
class Defaultclass
{
static int x = 5;
static void Main(string[] args)
{
}
}
因为它没有任何意义 – 2014-09-13 08:30:50