Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Скриптыч
28 / 17 / 2
Регистрация: 14.08.2013
Сообщений: 147
#1

namespace - C++

05.10.2013, 12:20. Просмотров 369. Ответов 5
Метки нет (Все метки)

Доброго времени и суток !!!
Я хотел спросить что такое namespace (вообще что такое пространство имен?)
Только модно доходчиво (доходчиво-это не статья из вики).
Заранее спасибо!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.10.2013, 12:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос namespace (C++):

namespace - C++
Сколько читаю форумы и прочее, видел только namespace std. какие еще бывают и зачем они нужны?

Namespace - C++
Мне посоветовали использовать функцию "using namespace std;". За что это строчка отвечает? Может есть еще какие-то функции, которые можно...

namespace - C++
Адекватно-ли использовать в таком случае пространство имен? Лучший-ли это выход из ситуации? #include <iostream> #include <string>...

namespace - C++
Не могу понять суть пространства имен. Точнее ,в общих чертах , я понял что это,но зачем это нужно?В частности: 1)А зачем они...

using namespace std; - C++
Здравствуйте. Я заметил, что многие программисты стараются избегать этой строчки в своих программах. С чем это связанно? И еще...

using namespace std - C++
Обьясните пожалуйста понятным языком, что такое пространство имен, и зачем нужна эта команда или std::

5
Fyret
185 / 171 / 13
Регистрация: 30.07.2013
Сообщений: 359
05.10.2013, 12:24 #2
Считай, что namespace - это фамилия функций, классов, переменных пространства имен. И потом их так вежливо вызываешь по фамилии-имени, ну, чтоб не путаться. Модно? Доходчиво? :-)
1
Убежденный
Ушел с форума
Эксперт С++
15697 / 7207 / 1139
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
05.10.2013, 12:27 #3
Пространство имен - это способ разруливать конфликты имен.
Предположим, вы написали функцию или класс под названием worker, и этот worker
используется во многих частях программы. Но в один день вы подключаете код,
написанный другим разработчиком, и с удивлением обнаруживаете, что там тоже
используется имя worker. В результате программа перестает компилироваться.

И вот эта проблема может быть решена помещением одного из worker-ов в
отдельное пространство имен. Например, ваш worker будет именоваться myspace::worker, а
worker другого разработчика - просто worker. Так конфликт разрешается, при этом не
нужно бегать по коду программы и переименовывать своего worker-а в какого-нибудь
worker_2, достаточно просто обернуть весь нужный код в namespace {}.

Еще пространства имен используются для более стройной организации кода.
Например, можно все классы и функции для работы с сетью поместить в
пространство имен network.
2
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
05.10.2013, 12:35 #4
using namespace std
1
Скриптыч
28 / 17 / 2
Регистрация: 14.08.2013
Сообщений: 147
05.10.2013, 13:32  [ТС] #5
Спасибо !!!
0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
05.10.2013, 16:16 #6
Цитата Сообщение от Убежденный Посмотреть сообщение
достаточно просто обернуть весь нужный код в namespace {}.
Тут хотелось бы уточнить, что безымянные пространства имен запрещают доступ к определенным в них сущностям из других единиц трансляции. В частности этот способ рекомендуется использовать вместо объявления глобальных переменных как static.
0
05.10.2013, 16:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.10.2013, 16:16
Привет! Вот еще темы с ответами:

подскажите с using namespace - C++
все что ниже написано - это части класса myclass struct marked_area { long double L; int t; int num; // кол-во...

std:: vs namespace - C++
Тема не для холивара, объясните пожалуйста чем лучше std:: а не using namespace std ? Без namespace std, возникает такая ошибка, но...

namespace std - C++
Добрый день. Вычитал что могу использовать любой namespace. Но в другом месте написано что если не использовать std, то не сможет...

вопрос по using namespace - C++
добрый вечер) писала программу, сортирующую слова по частоте их встречаемости //Объявите класс с именем text. Объявите функцию...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru