|
-28 / 35 / 25
Регистрация: 14.06.2013
Сообщений: 1,452
|
|||||||
Создание пространства имен05.05.2015, 14:15. Показов 8316. Ответов 60
Метки нет (Все метки)
Всем доброго времени суток !!!
Не могу понять назначение создания пространств имен. В книге автор привел следующий код программы. Помогите пожалуйста разобраться в эго назначении . Что автор этим хотел сказать ?
0
|
|||||||
| 05.05.2015, 14:15 | |
|
Ответы с готовыми решениями:
60
Не возникает ли коллизия имен, если использовать два пространства имен, и в каждом из них будут одноименные? Пространства имён с++ Пространства имен в Эклипс |
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
||||||
| 13.11.2015, 15:10 | ||||||
|
RAFA91, наличие пространства имен никак не влияет на разделение кода по cpp/h файлам.
В хедере будет как в твоем примере. А в цэпэпэшнике так:
0
|
||||||
|
-28 / 35 / 25
Регистрация: 14.06.2013
Сообщений: 1,452
|
|
| 13.11.2015, 15:17 [ТС] | |
|
Tulosba да то все понятно что суть не изменится.
так как лучше поступить ? разделить по cpp и h или все загнать в h ? или может в самом h вынести реализацию функций за пространство ?
0
|
|
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|||||||||||||
| 13.11.2015, 15:29 | |||||||||||||
inline функций.Но, повторюсь ещё раз, это никоим образом не зависит от наличия/отсутствия пространства имен. Если функций мало, то можно и так:
N::):
0
|
|||||||||||||
|
-28 / 35 / 25
Регистрация: 14.06.2013
Сообщений: 1,452
|
||||||||||||
| 13.11.2015, 15:40 [ТС] | ||||||||||||
0
|
||||||||||||
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
||
| 13.11.2015, 15:44 | ||
|
0
|
||
|
-28 / 35 / 25
Регистрация: 14.06.2013
Сообщений: 1,452
|
|||||||
| 13.11.2015, 15:48 [ТС] | |||||||
0
|
|||||||
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|||||||
| 13.11.2015, 15:50 | |||||||
0
|
|||||||
|
-28 / 35 / 25
Регистрация: 14.06.2013
Сообщений: 1,452
|
|
| 13.11.2015, 15:57 [ТС] | |
|
ну тут понятное дело будет ошибка даже если открыть оба пространства.
мне просто хотелось уточнить по поводу выноса реализации функций за пространство. я думал что если мы выносим реализации функций за пространство, то явно указывать пространство не нужно при ее вызове.
0
|
|
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|||||||
| 13.11.2015, 16:00 | |||||||
2
|
|||||||
|
-28 / 35 / 25
Регистрация: 14.06.2013
Сообщений: 1,452
|
||||||||||||||||
| 13.11.2015, 17:35 [ТС] | ||||||||||||||||
|
ради интереса хотел уточнить такую штуку. пока не проверял.
можно ли в классе использовать перечисление к примеру такое
в пространство его положить свободно можно
0
|
||||||||||||||||
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|
| 13.11.2015, 17:37 | |
|
1
|
|
|
-28 / 35 / 25
Регистрация: 14.06.2013
Сообщений: 1,452
|
|
| 13.11.2015, 17:45 [ТС] | |
|
0
|
|
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|
| 13.11.2015, 17:59 | |
|
RAFA91, зависит от того в какой секции объявишь: public, private, protected
0
|
|
|
-28 / 35 / 25
Регистрация: 14.06.2013
Сообщений: 1,452
|
|||||||||||
| 13.11.2015, 18:27 [ТС] | |||||||||||
|
как я понял
0
|
|||||||||||
|
-28 / 35 / 25
Регистрация: 14.06.2013
Сообщений: 1,452
|
||
| 13.11.2015, 18:43 [ТС] | ||
|
что если перед enum поставить слово статик ?
0
|
||
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|
| 13.11.2015, 18:49 | |
|
1
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||
| 13.11.2015, 19:07 | |||||||
|
с точки зрения правил языка с++ namespace и class - принципиально различные конструкции. но с точки зрения их низкоуровневой природы, у них очень много общего. в некотором смысле можно считать, что namespace - вырожденная форма класса. даже более того, если представить отношения пространств и классов в виде диаграммы UML, то получаем любопытную картинку:
что стуктуры и классы - инстансы одного и того же шаблона, параметризованные разными стратегиями, которые отвечают за модификаторы доступа а этот шаблон наследуется от namespace, наследуя все его примитивные свойства. по этой причине, классы/структуры точно так же, как и неймспейсы определяют область видимости различных имен. и позволяют объявлять в пространстве своих имен различные сущности. возвращаясь к вашим енумам: в обоих случаях у вас там будет один и тот же принцип работы. действуют одни и те же правила объявления енума. и один и тот же способ получить доступ к енуму. единственное, для классов действует стратегия управляющая доступом к его компонентам. но так как в вашем случае модификатор доступа public, то вы действительно получили аналог неймспейса.
1
|
|||||||
| 13.11.2015, 19:07 | |
|
Использование пространства имен Использование пространства имен Подключение пространства имён
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр.
Дословно, отклонённая. . .
|
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы
Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
|
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
|
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2.
Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
|
|
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
|
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
|
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
|
Более приземисто - Эстафету хвоста в .cdl (деревья эстафеты в сад).
Hrethgir 24.07.2026
В будущем, после написания блока инверсии обхода дерева (эстафеты хвоста), я планирую вернуться к нашему прошлому разговору о том, обладают ли знания целеполаганием. Тогда я пришел к выводу, что. . .
|