首页 > 解决方案 > 为什么这会给我一个 for 循环变量中的范围错误

问题描述

所以我正在做一个简单的 for 循环,突然我得到一个范围错误。如果我改变它消失iint i = 100但我只想了解为什么会发生这种情况。

错误出现在for(int i = 0; i<10; i++)

不能在此范围内声明名为“i”的本地参数,因为该名称在封闭的本地范围中用于定义本地或参数

class Class1
{
    static void Hi()
    {
        for(int i = 0; i<10; i++)
        {
            //do something
        }
        int i = 100;
    }
}

标签: c#for-loop

解决方案


的声明int i = 100;被认为包含了 for 循环(无论它是否不在方法的顶部),因此您不能使用与包含您的块的块中出现的变量名称相同的变量。


推荐阅读