progs.biz  
Начало > C# > Основы > Урок 17
C#
VB.NET
Visual C++.NET
ASP.NET
Visual C++ 6
WinAPI
C/C++
Delphi
C++ Builder
Java
PHP
DirectX
Visual Basic 6.0
Ассемблер
Интернет
Сист. прогр-ние
Pocket PC
Обзор книг
Обзор программ

Алексей Дубовцев Microsoft .NET. Наиболее полное руководство.
Алексей Дубовцев Microsoft .NET. Наиболее полное руководство.
Заказать на Озоне



Яндекс-цитирования

Основы 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, то ошибки не будет.

Рассылки нашего сайта на Subscribe.Ru
Visual C++, MFC
C# и .NET
VB.NET
ASP.NET new!
Win API
C/C++
Delphi
Java
HTML, PHP, mySQL, WEB-дизайн
Flash MX
C++ Builder
Ассемблер
SQL Server
DirectX
Обзор книг
Обзор программ
Новости сайта progs.biz

 
 
Копирование любых материалов сайта без разрешения авторов и владельцев сайта запрещено.
© 2002-2005 сайт progs.biz
© 2002-2005 Алексеев Игорь