Шаг 3 - Пространство имен

Пространство имен 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()
{
	
}

Смотрите на реакцию компилятора он их различает.

3.gif (5151 b)

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

// 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;
}

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


Загрузить проект | Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 05.02.2000