Что такое полное имя?

Насколько я могу судить, термин Полностью квалифицированный не упоминается в стандарте (например), но я могу припомнить, что много раз «слышал» его в Интернете.

Что люди имеют в виду, когда говорят, что имя квалифицировано как от корки до корки?

Это считается?

A::f()

или только это?

::A::f()

И, если это стандарт является, какой формулировки я не нашел?

С введенным именем класса можно В самом деле квалифицировать материал. ::A::A::A::A::f(). Хотя не уверен, что "полностью".

StoryTeller - Unslander Monica 23.05.2019 12:42

@StoryTeller Мы должны подать прошение о добавлении этого термина в стандарт! действительно-действительно-действительно-квалифицированный идентификатор и т. д.

Lightness Races in Orbit 23.05.2019 13:24

Что означает тег language-lawyer?

Evorlor 23.05.2019 23:38

@Evorlor Наведите на него указатель мыши (и/или щелкните)

Lightness Races in Orbit 24.05.2019 01:07
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
44
4
4 507
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Идентификатор, использующий оператор разрешения области действия, является квалифицированным именем в соответствии с [expr.prim.id.qual]. В противном случае он является неквалифицированным.

Стандарт не определяет значение Полностью квалифицированный, но делает упоминает об этом в [библиотеке]/[требованиях]/[организации]/[содержании], где говорится (цитата из черновика стандарта)

Whenever a name x defined in the standard library is mentioned, the name x is assumed to be fully qualified as ::std::x, unless explicitly described otherwise. For example, if the Effects: element for library function F is described as calling library function G, the function ::std::G is meant.

Википедия определяет Полное имя:

In computer programming, a fully qualified name is an unambiguous name that specifies which object, function, or variable a call refers to without regard to the context of the call

Только уточненное имя, начинающееся с глобального пространства имен, однозначно без контекста. Это обычное использование.

Действительно, это не стандартный термин. В стандарте нет определения.

Однако фраза «полностью квалифицированная» появляется ровно один раз в [содержании] (15.5.1.1 «Содержимое библиотеки» в последнем на момент написания проекте N4800), параграф 3:

Whenever a name x defined in the standard library is mentioned, the name x is assumed to be fully qualified as ::std::x, unless explicitly described otherwise.

Таким образом, в этом определении полностью определены только имена, начинающиеся с ::.

Другие вопросы по теме