早些时候我遇到了一个问题,我发现 C# 有一些奇怪的行为。
这将引发错误:
public class MyClass
{
public int MyMethod()
{
for(int x = 0; x < 1; x++)
{
for(int x = 0; x < 1; x++)
{
}
}
}
}
但这不会:
public class MyClass
{
public int x = 0;
public int MyMethod()
{
for(int x = 0; x < 1; x++)
{
}
}
}
相反,当 for 循环结束时, x 将被设置回 0。如果您有 oneint x
和 one ,这也将起作用bool x
。
为什么这行得通?