Я смущен насчет квалификатора const
. Я нашел и прочитал много статей и подобных вопросов, таких как http://www.cprogramming.com/reference/pointers/const_pointers.html.Определители и амперсанды
Что мне не ясно, почему g++
жалуются на этот класс члена:
const string& const name;
но не жалуется на
string& const name;
Моя идея заключается в том, чтобы объявить постоянный указатель на постоянное строковое значение. Я использую &
вместо *
, чтобы избежать NULL
указателей.
Что мне не хватает?
Ошибка компилятора заключается в следующем:
‘const’ qualifiers cannot be applied to ‘const string& {aka const std::__cxx11::basic_string<char>&}’
const string& const name;
^
«Моя идея заключается в том, чтобы объявить константный указатель ...» - '&' не объявить указатель на всех. –
Возможно, компилятор говорит: «Вы сказали мне однажды, почему ....» –
Вы вводите в заблуждение ссылки и указатели. Посмотрите их в индекс вашего любимого справочника C++. –