variable scope in statement blocks

前端 未结 9 1849
梦如初夏
梦如初夏 2020-12-01 21:14
for (int i = 0; i < 10; i++)
{
    Foo();
}
int i = 10; // error, \'i\' already exists

----------------------------------------    

for (int i = 0; i < 10; i         


        
9条回答
  •  夕颜
    夕颜 (楼主)
    2020-12-01 21:57

    class Test
    {
        int i;
        static int si=9; 
    
        public Test()
        {
            i = 199;
        }
    
        static void main()
        {
            for (int i = 0; i < 10; i++)
            {
                var x = 2;
            }
    
            { var x = 3; }
    
            {    // remove outer "{ }" will generate compile error
                int si = 3; int i = 0;
    
                 Console.WriteLine(si);
                 Console.WriteLine(Test.si);
                 Console.WriteLine(i);
                 Console.WriteLine((new Test()).i);
            }
        }
    }
    

提交回复
热议问题