Главная » Статьи » Програмування » C++ | [ Добавить статью ] |
Указатель this.В прошлом уроке мы выяснили, что любой метод класса самостоятельно определяет, для какого объекта он был вызван и "видит" другие члены класса без передачи их в качестве параметров. Зададимся вопросом: как это происходит?! Ответ на этот вопрос не является секретом. Дело в том, что когда функция, принадлежащая классу, вызывается для обработки данных конкретного объекта, этой функции автоматически и неявно передается указатель на тот объект, для которого функция вызвана. Этот указатель имеет фиксированное имя this и незаметно для программиста определен в каждой функции класса. Итак, кое-что о this...1. Указатель this инициализируется значением адреса объекта, для которого вызван метод, перед началом выполнения кода этого метода. 2. Имя this является служебным (ключевым) словом. 3. Явно описать или определить указатель this нельзя. 4. В соответствии с неявным определением this является константным указателем, т.е. изменять его нельзя, однако в каждой принадлежащей классу функции он указывает именно на тот объект, для которого функция вызывается. 5. Объект, который адресуется указателем this, становится доступным внутри принадлежащей классу функции именно с помощью указателя this. 6. Внутри функции - члена класса можно явно использовать этот указатель. Указатель this является очень полезным, а иногда просто незаменимым. Например, в следующем коде указатель this позволяет компилятору разобраться в ситуации, когда имя компонента класса совпадает с именем формального параметра, принадлежащего методу:
Сейчас мы только познакомились с указателем this. Более широкое применение он еще найдет в последующих уроках. | |||
Просмотров: 1011 | Комментарии: 1 | |
Всего комментариев: 0 | |