Pomocí oboru Názvů Složení
Nejlepší praxe v programování naznačuje, izolovat nové údaje orfunctionality v rozumně pojmenované, jedinečný obor názvů wheneverpossible. To je považováno za výhodu oproti dumpingové všechno, co se v globální obor názvů, jak je pak název look-up může být explicitně povolena ordisabled jako výše, symboly jsou neustále rozbité, bez repetitivenaming předpony nebo makra, atd.
zvažte například projekt, který definuje většinu svých tříd v namespace gtk. namespace gtk až namespace std je možné přizpůsobit pomocí C++-funkce nazvané kompozice. To je to, co se stane, ifa pomocí prohlášení je uveden do anamespace-definice: importované symbol(y) se dováží do kv současné době aktivní oboru názvů(s). Například:
namespace gtk{ using std::string; using std::tr1::array; class Window { ... };}
v tomto příkladu se std::string importuje donamespace gtk. Výsledkem je, že použitístd::string uvnitř jmenný prostor gtk stačí použít string, bez explicitní kvalifikace.Jako bonus,std::string není dovážené do globální obor názvů. Dále je možné provést propracovanější uspořádání zpětné kompatibility a přenositelnosti, kdyusing – deklarace mohou být zabaleny do Maker, která jsou nastavena na základě autoconf-testů buď na „“ nebo tj. using std::string; (v závislosti na tom, zda má systém libstdc++ v std:: nebo ne). (nápady zmllewelly a Karl Nelson)