Урок 90. Оператор доступа к членам через указатель

  Юрий Ворон  | 

    | 

  Обновл. 22 Окт 2017  | 

 4538

 ǀ   1 

Обычно имеется либо указатель, либо ссылка на структуру (или класс). Как мы уже знаем из предыдущих уроков, доступ к члену структуры осуществляется через оператор выбора члена (.) (или еще «оператор доступа к члену»):

Этот синтаксис также работает и для ссылок:

Однако в случае с указателем вам нужно его сначала разыменовать:

Обратите внимание, разыменование указателя должно находиться в круглых скобках, поскольку оператор выбора члена имеет более высокий приоритет, чем оператор разыменования.

Поскольку синтаксис доступа к членам структур и классов с помощью указателя несколько неудобен, то C++ предоставляет второй оператор выбора членов (->) для осуществления доступа к членам через указатель. Следующие две строки эквивалентны:

Это не только легче печатать, но этот способ также менее подвержен ошибкам, поскольку здесь разыменование неявно автоматически выполняется за нас, поэтому нет проблем с приоритетом, о которых нужно помнить. Следовательно, при доступе к членам структур или классов через указатель всегда используйте оператор «->» вместо оператора «.».

Правило: При использовании указателя для доступа к значению члена структуры или класса используйте оператор «->» вместо оператора «.».

Оценить статью:

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (53 оценок, среднее: 4,94 из 5)
Загрузка...

Комментариев: 1

  1. Александр:

    тем, кто сомневается в удобстве синтаксиса -> можно предложить сравнить:

    с

    оставим за скобками идиотизм подобного вызова 🙂 Но в принципе то подобное возможно! Что читается проще и наглядней? :)))

Добавить комментарий

Ваш E-mail не будет опубликован. Обязательные поля помечены *