Основы C#. Урок 17. Область видимости
Переменные существуют только в своей области видимости, при выходе из которой переменная "умирает". Область видимости переменной в первом приближении начинается в строке, где переменная объявлена и кончается на закрывающей фигурной скобке (переменная должна быть объявлена между этой скобкой и парной к ней открывающей). Вот поясняющий пример:
int k=3; //Все OK, переменая k видна Console.WriteLine(k);
Тут значение переменной k доступно и выведется на экран.
... { int k=3; } //Переменая k не видна Console.WriteLine(k); //Ошибка!
В этом же примере вывести k на экран не получится - она умерла на закрывающей фигурной скобке.
Во вложенных областях видимости мы, как правило, не можем объявлять переменные с одинаковыми именами:
int k=4; { //Ошибка! int k=3; }
Исключение составляют параметры в методах класса:
class Vector { float x, y; //Координаты ... public Vector(float x, float y) { this.x=x; this.y=y; }
Здесь мы имеем две пары одноименных переменных - x в параметре конструктора и x как переменная класса. Так как для уточнения переменной класса мы можем использовать this, то ошибки не будет.