@alex_ak1

Что значит такое объявления полей в С++?

Наткнулся на странный способ объявления полей в С++:

class Cls
{
  private:
    std::string m_field;
  public:
    const std::string& field = m_field;
}


Это получение константной ссылки на внутренне поле?
  • Вопрос задан
  • 143 просмотра
Решения вопроса 1
wataru
@wataru Куратор тега C++
Разработчик на С++, экс-олимпиадник.
Да. Field - ссылка на приватное поле. Но она константная, поэтому так дается доступ к приватному полю только на чтение.

Это становится понятнее, если воспринимать ссылки как указатели, которые не могут быть нулевыми, не могут менять адресс, куда они указывают, и должны быть инициализированны.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы