840 / 498 / 325
Регистрация: 29.12.2009
Сообщений: 1,106
|
||||||||||||||||
1 | ||||||||||||||||
Использование имен предопределенных объектов в качестве имен переменных19.07.2014, 12:13. Показов 3426. Ответов 19
Метки нет (Все метки)
Есть код:
Примеры компилировал в gcc 4.7.0 и MSVS 2010.
0
|
19.07.2014, 12:13 | |
Ответы с готовыми решениями:
19
Русские символы в качестве имен переменных Использование ссылок и обычных имен переменных Использование переменных вместо имен таблицы и полей в SQL-запросах Использование длинных имен переменных увеличивает вес файла с программой? |
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
||||||
19.07.2014, 12:17 | 2 | |||||
Давать переменным имена, совпадающие с объектами стандартной библиотеки? Нет, только запутывает.
По стандарту не проконсультирую, но разрешение имен объектов начинается с локальной области видимости. Объявленные в ней имена перекрывают глобальные, чтобы к ним обратиться - используется оператор ::.
1
|
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
19.07.2014, 12:28 | 4 |
Там все однозначно - используется локальная переменная, просто нет оператора<<(int, std::basic_ostream<blablabla>)
1
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|
19.07.2014, 12:31 | 5 |
Вот на них и стоит сделать акцент. Вот что выдал gcc:
Добавлено через 37 секунд Я поэтому и дропнул пост Но, не достаточно быстро, видимо
0
|
840 / 498 / 325
Регистрация: 29.12.2009
Сообщений: 1,106
|
|
19.07.2014, 12:32 [ТС] | 6 |
0x10, к глобальным именам будут относится различные объекты и функции библиотек?
Добавлено через 34 секунды Да, это и выдал
0
|
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
19.07.2014, 12:36 | 8 |
Скапитаню: к глобальным идентификаторам будут относиться идентификаторы, находящиеся в глобальной области видимости. Не важно, пользовательские или библиотечные.
1
|
840 / 498 / 325
Регистрация: 29.12.2009
Сообщений: 1,106
|
|
19.07.2014, 12:37 [ТС] | 9 |
0
|
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
19.07.2014, 12:38 | 10 |
1
|
840 / 498 / 325
Регистрация: 29.12.2009
Сообщений: 1,106
|
||||||
19.07.2014, 12:44 [ТС] | 12 | |||||
Блин, точно
Ведь локальная переменная cout перекрыла глобальный идентификатор cout и следующая запись стала рассматриваться как побитовый сдвиг.
0
|
840 / 498 / 325
Регистрация: 29.12.2009
Сообщений: 1,106
|
|
19.07.2014, 12:54 [ТС] | 15 |
Не, так изначально и было задумано. Просто читаю сейчас читаю С.Прата "Язык программирования С++" и там прочитал это. Вот и заинтересовался и решил разобраться
0
|
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
19.07.2014, 12:56 | 16 |
MicM, ну очень спорно написано, ибо на предыдущей страницы я приводил пример, который показывает, что использовать можно.
0
|
840 / 498 / 325
Регистрация: 29.12.2009
Сообщений: 1,106
|
|
19.07.2014, 12:59 [ТС] | 17 |
0x10, ага, вот тоже нашел
http://msdn.microsoft.com/ru-r... 1xz31.aspx
0
|
840 / 498 / 325
Регистрация: 29.12.2009
Сообщений: 1,106
|
|
19.07.2014, 13:14 [ТС] | 19 |
Tulosba, 6-е издание, 2012 год
0
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
||||||
19.07.2014, 13:23 | 20 | |||||
Ну тогда не знаю. Может трудности перевода А может и афтор шалит.
Кстати ещё для укрепления материала могу такой код предложить рассмотреть: Кликните здесь для просмотра всего текста
2
|
19.07.2014, 13:23 | |
19.07.2014, 13:23 | |
Помогаю со студенческими работами здесь
20
Чтение имён переменных из файла и раскрытие этих переменных Имя типа или пространства имен отсутствует в пространстве имён Имя типа или пространства имен отсутствует в пространстве имен Есть 50 имен в списке. Как сделать без сервера поиск среди этих 25 имен? Не возникает ли коллизия имен, если использовать два пространства имен, и в каждом из них будут одноименные? Поиск файлов по списку имён и по заданным расширениям с выводом полных имён найденных в текстовый файл Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |