Spec-Zone.ru › C++

Псевдонимы пространств имён

Псевдонимы пространств имён позволяют программисту задать альтернативное имя для пространства имён.

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

Синтаксис

namespace alias_name = ns_name; (1)
namespace alias_name = ::ns_name; (2)
namespace alias_name = nested_name::ns_name; (3)
namespace alias_name = splice-specifier; (4) (since C++26)
alias_name - идентификатор
ns_name - идентификатор, возможно квалифицированный, обозначающий пространство имён или псевдоним пространства имён
splice-specifier - спецификатор вставки, обозначающий пространство имён, отличное от глобального пространства имён

Пояснение

Новый псевдоним alias_name предоставляет альтернативный способ доступа к ns_name или пространству имён, обозначенному splice-specifier(since C++26).

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

Ключевые слова

namespace

Пример

#include <iostream>
 
namespace foo
{
    namespace bar
    {
         namespace baz
         {
             int qux = 42;
         }
    }
}
 
namespace fbz = foo::bar::baz;
 
int main()
{
    std::cout << fbz::qux << '\n';
}

Вывод:

42

См. также

объявление пространства имён объявляет пространство имён
объявление псевдонима типа (C++11) создаёт синоним для типа

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/language/namespace_alias

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API