对于没有局部变量的简单方法,如下所示
public static int Test1(short i, long j)
{
j = i + j;
switch (j)
{
case 1:
j = 2;
break;
default:
j = 11;
break;
}
return j;
}
MethodInfo.GetMethodBody().LocalVariables.Count = 2 为什么?添加另一个 switch 语句,计数变为 3 WHY?
public static int Test1(short i, long j)
{
j = i + j;
switch (j)
{
case 1:
j = 2;
break;
default:
j = 11;
break;
}
switch (i)
{
case 1:
j = 2;
break;
default:
j = 11;
break;
}
return j;
}
没有定义局部变量。那么为什么是 2 和 3。另外,如果另一个带有 j 的 switch 语句将计数保持在 2。