C#中为啥不能在函数里设置静态变量?
在VB中可以在过程中设置静态变量,如PrivateSubCommand1_Click()staticaasintegerEndSub单在C#中不可以,internalcl...
在VB中可以在过程中设置静态变量,如
Private Sub Command1_Click()
static a as integer
End Sub
单在C#中不可以,
internal class aa {
internal void ass(){
static int a;
Console.WriteLine();
}
修饰符 static 对该项无效,为啥? 展开
Private Sub Command1_Click()
static a as integer
End Sub
单在C#中不可以,
internal class aa {
internal void ass(){
static int a;
Console.WriteLine();
}
修饰符 static 对该项无效,为啥? 展开
8个回答
展开全部
因为机制的关系,其实C#这个可以理解为是替代C++中宏的东西,那么定义宏当然不能在函数里定义了。
c#的静态变量是在对象生成的时候分配内存空间的,而不是函数执行的时候。如果在函数里定义,那么这个变量就需要在函数执行的时候分配内存空间,这是C#不允许的,至于为什么不允许,个是因为垃圾回收机制的问题。
c#的静态变量是在对象生成的时候分配内存空间的,而不是函数执行的时候。如果在函数里定义,那么这个变量就需要在函数执行的时候分配内存空间,这是C#不允许的,至于为什么不允许,个是因为垃圾回收机制的问题。
本回答被网友采纳
展开全部
C#中,静态变量是类变量,只能在类中定义。
类变量在类定义的时候就创建了,不需要实例化。
你给出的函数是在实例化的函数。在实例化的函数中不能定义类变量。
类变量在类定义的时候就创建了,不需要实例化。
你给出的函数是在实例化的函数。在实例化的函数中不能定义类变量。
展开全部
静态变量的所有者是类,
Command1_Click()方法的所有者是类的实例化对像
Command1_Click()方法的所有者是类的实例化对像
展开全部
只有在静态类中才能用静态方法
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询