Псевдоним пространства в C++
Длинные цепочки вроде shop::tax::rate утомляют глаз.
Псевдоним пространства задают строкой
namespace s = shop;. Дальше можно писать
s::price вместо shop::price. Псевдоним
не создает новую область - он лишь короткое имя для
уже существующего namespace.
Заголовок с функцией в shop:
#ifndef SHOP_H
#define SHOP_H
namespace shop {
int price();
}
#endif
Определение функции оставим в shop.cpp:
#include "shop.h"
namespace shop {
int price() {
return 100;
}
}
В main.cpp зададим alias и выведем значение:
#include <iostream>
#include "shop.h"
namespace s = shop;
int main() {
std::cout << s::price() << "\n";
return 0;
}
Объявите пространства parts::engine и
parts::body с функциями tag,
возвращающими разные целые. В main.cpp
задайте псевдонимы eng и bod
и выведите оба результата.
Сократите префикс legacy::v1 псевдонимом
old и вызовите функцию из этого пространства
через короткое имя.