;
单独使用时是一条语句(空语句),但是在类的主体中只允许声明语句,其他类型的语句只能出现在方法的主体中。
;
结尾的都是语句。 - Selman Genç;
本身是一个空语句。在类范围内,只允许声明语句。类主体的定义在C#规范5.0,§10.1.6 类主体
中。
class-body:
{ class-member-declarations }
例如,你不能在单独的语句中初始化一个字段:class Foo
{
int x = 2; // this is allowed
x = 5; // this is not
}
因此,在类主体中,您只能声明字段和其他成员,但不能使用其他语句。
这不是局部变量声明的一部分,它是一个独立的语句,正如Thomas所指示的。
以下是有效的代码:
public void MyMethod ()
{
;;;
int a = 1;
;
Console.WriteLine(a); //dummy
;;
}
while(mycondition) ;
将其放在类的主体中是没有意义的,不会带来额外的价值。
简而言之,这与变量/字段声明无关。
您可能还想查看此线程:在C#中何时使用没有语句的范围?
它有点相似,但不完全相同,它将帮助您了解为什么
int a = 1;;;
是有效的。