В своей книге "Язык программирования С++" (третье издание) Stroustrup учит определять отдельные компоненты в своем собственном пространстве имен и импортировать их в общем пространстве имен.
Например:
namespace array_api {
struct array {};
void print(const array&) { }
}
namespace list_api {
struct list {};
void print(const list&) { }
}
namespace api {
using array_api::array;
using list_api::list;
}
Я выгляжу интересным, но я никогда не видел, чтобы этот подход использовался на практике.
Почему эта техника почти никогда не используется?