Пространство имен в C++
Если в программе два класса с одним именем, они вступят в конфликт. Так бывает, когда разные части программы называют сущность одинаково.
Пространство имен задает общий префикс. Объявления
оборачивают в namespace shop { ... }, а снаружи
пишут полное имя shop::price.
Функция price вернет фиксированную цену. Объявим
ее в заголовке внутри shop:
#ifndef SHOP_H
#define SHOP_H
namespace shop {
int price();
}
#endif
Определение и точка входа разместим в shop.cpp:
#include <iostream>
#include "shop.h"
namespace shop {
int price() {
return 100;
}
}
int main() {
std::cout << shop::price() << "\n";
return 0;
}
В пространстве geo объявите функцию area,
которая возвращает 10. Выведите результат
через geo::area.
Добавьте в shop функцию tax, возвращающую
15, и выведите оба числа из main с префиксом
пространства.