Läs och prova följande kod (det finns ingen utgång): namespace först {int ident1 = 33; void fn1 (); } Namespace andra {int ident2 = 44; void fn2 (); } Int myInt = första :: ident1; int yourInt = sekund :: ident2; void första :: fn1 () {//några uttalanden} void sekund :: fn2 () {//vissa uttalanden} int main () {första :: fn1 (); återvända 0; } Ovanstående kod är OK. Det samman framgångsrikt. Det finns ingen utgång eftersom cout objektet var inte i koden. Det finns två namnutrymmen i ovanstående kod: en kallas första och den andra kallas sekund.
Insidan först, har du initieringen av identifierare, ident1 och deklarationen av funktionen fn1. Inne i namnområdet, andra, har du initieringen av identifierare, ident2 och deklarationen av funktionen, fn2. I ovanstående kod, för att använda identifierare från ett namnområde måste du använda omfattningen operatören. Du börjar med namnet på namnområdet, då omfattningen aktör och som är :: då identifierare. De följande två uttalanden efter det namn ovan, initiera två nya identifierare. Det första påståendet använder int identifieraren från namnområdet, som kallas först.
Det andra uttalandet använder int identifieraren från namnområdet, som kallas andra. Observera användningen av räckvidden operatörerna i dessa två uttalanden. Nedanför de två ovanstående påståenden, har du definitionen av funktionen fn1 från namespace, först och definitionen av fn2 funktionen från namespace andra. Observera användningen och placeringen av räckvidden operatören i dessa två definitioner. Notera placeringen av returtyp i början av vart och ett av definitionerna.
Observera användningen och placeringen av namnområdet funktionsdeklarationen identifierare i vart och ett av definitionerna. I huvudfunktionen funktionen fn1 av namnområdet, första kallas. Att kalla det att du börjar med sin namnrymdidentifikatorn, då omfattningen operatör och sedan funktionsnamnet med parentes. I ovanstående kod, har namn ident