C++ для начинающих.

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

Псевдоним пространства имен используется для задания короткого синонима имени пространства. Например, длинное имя.

Namespace International_Business_Machines.

{ /* ... */ }.

Может быть ассоциировано с более коротким синонимом:

Namespace IBM = International_Business_Machines;

Объявление псевдонима начинается ключевым словом namespace, за которым следует короткий псевдоним, а за ним – знак равенства и исходное полное имя пространства. Если полное имя не соответствует никакому известному пространству, это ошибка.

Псевдоним может относиться и к вложенному пространству имен. Вспомним слишком длинное определение функции func() выше:

#include "primer.h".

// трудно читать!

Void func( cplusplus_primer::MatrixLib::matrix m ).

{

// ...

CplusplLis_primer::MatrixLib::inverse( m );

Return m;

}

Разрешается задать псевдоним для обозначения вложенного cplusplLis_primer::MatrixLib, сделав определение функции более удобным для восприятия:

#include "primer.h".

// более короткий псевдоним.

Namespace mlib = cplusplus_primer::MatrixLib;

// читать проще!

Void func( mlib::matrix m ).

{

// ...

Mlib::inverse( m );

Return m;

}

Одно пространство имен может иметь несколько взаимозаменяемых псевдонимов. Например, если псевдоним Lib ссылается на cplusplus_primer, то определение функции func() может выглядеть и так:

// псевдоним alias относится к пространству имен cplusplus_primer.

Namespace alias = Lib;

Void func( cplusplus_primer::matrix m ) {

// ...

Alias::inverse( m );

Return m;

}