ВНИМАНИЕ! Конкурс по программированию!

Проект Programmers.kz и школа hotPen3D2D предлагает Вам курсы по веб-дизайну, веб-программированию и компьютерной графике. Подробности здесь.

 
Информация к новости
 (голосов: 0)

Урок 45. Ссылка на текущий экземпляр класса (this)

Категория: Программирование » C# » Уроки C#

Ссылка на текущий экземпляр класса делается через ключевое слово this. Вот традиционный пример:

    class SomeClass
    {
        public int a;
        SomeClass(int a)
        {
            this.a=a;
        }
    }

В этом примере у нас и переменная класса, и параметр метода названы одинаково - a. Для уточнения, что мы используем именно переменную класса, а не параметр метода, и служит слово this.

В C++ же для избегания конфликта имен обычно к переменной класса прибывлялся префикс m_.

Еще одна возможность по использованию ключевого слова this - это вызов одного конструктора из другого. Вот пример:

    class SomeClass
    {
        public int a;
        public int b;
        //Конструктор с 2-я параметрами.
        public SomeClass(int a, int b)
        {
            this.a=a;
            this.b=b;
        }
        //Конструктор без параметров,
        //вызывающий конструктор с 2-я параметрами.
        public SomeClass():this(1, 1)
        {
        }
        
    }
    //Тестовый класс.
    class App
    {
        static void Main()
        {
            SomeClass s=new SomeClass();
            Console.WriteLine("a={0}, b={0}", s.a, s.b);
        }
    }

Здесь в классе SomeClass два конструктора. Второй конструктор (без параметров) вызывает первый (передавая в него значения 1 и 1):

...
public SomeClass():this(1, 1)
...

Указанный фрагмент выведет, разумеется, a=1, b=1.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Добавление комментария

Имя:*
E-Mail:
Комментарий:
Введите два слова, показанных на изображении: *