Библиотека STL (Standart Template Library) - Пространство имен

ОГЛАВЛЕНИЕ

Пространство имен

Пространство имен namespace это новый элемент языка и для работы с STL мы обязаны принять его во внимание. Этот элемент создан для программ созданых из многих файлов, в которых есть опасность конфликта имен.

Объявляется пространство имен командой namespace:

C++ Спецификация
namespace [идентификатор]
{
описание для этой рабочей области
}

Для использования рабочей области применяется команда using namespace:

C++ Спецификация
using namespace [идентификатор]

Посмотрим ? Создавайте проект Win32 Console, как Hello Word с именем TestNameSpace. И код. Объявляем различные области.

// TestNameSpace.cpp : Defines the entry point for the console application.
//


#include "stdafx.h"

namespace spaceA
{
int MyVal=10;
}

namespace spaceB
{
int MyVal=10;
}

namespace spaceC
{
int MyVal=10;
}

void main()
{

}

А вот так они используются.

// TestNameSpace.cpp : Defines the entry point for the console application.
//


#include "stdafx.h"
#include "iostream.h"

namespace spaceA
{
int MyVal=10;
}

namespace spaceB
{
int MyVal=20;
}

namespace spaceC
{
int MyVal=30;
}

void Test()
{
using namespace spaceB;
cout << MyVal << " " << "spaceB" << endl;
}

void main()
{
using namespace spaceA;
cout << MyVal << " " << "spaceA" << endl;
Test();
cout << spaceC::MyVal << " " << "spaceC" << endl;
}

Запустите посмотрите результат. Все работает как часы.