Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
3 / 3 / 0
Регистрация: 04.01.2011
Сообщений: 37
1

Как узнать пространство имен?

27.08.2012, 20:45. Показов 2122. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, возникла ситуация, при которой нужно явно указать, к какому пространству имен относится функция Ellipse. Я только начал изучать winapi, и возникла ситуация, что мой подключенный класс носит такое же имя - Ellipse. Гуглил инфу, подставлял и gdi:: и gdiplus:: и другие ругательства, угадать не получилось. Я понимаю, что такую ситуацию можно избежать, но хотелось бы узнать, как определить, к какому пространству имен относится та или иная функция?
Спасибо.
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.08.2012, 20:45
Ответы с готовыми решениями:

Как правильно добавить в пространство имен?
нужно добавить в пространство имен в заголовочном файле. //1.cpp с исходным кодом namespace...

Как в C++ задать размеры консольного окна, используя пространство имен System
Здрасти, вашему вниманию предлагается кусочек кода на C# Console.WindowTop = 0;...

пространство имен
Здравствуйте! У меня вопрос...В си есть такая функция printf, которая аналогична функции С++...

пространство имен
Один практикующий программист сказал мне, что пространство именusing namespace std; нежелательно...

6
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
27.08.2012, 20:47 2
Martinz, А не проще свой класс в namespace запихать? А узнать к какому ns что относится можно по документацию или посмотрев в хедеры.
0
442 / 410 / 132
Регистрация: 21.01.2012
Сообщений: 974
27.08.2012, 20:48 3
Компилятор не дурак и думает так же как и вы, т.е. он тоже в непонятках к какому же пространству имен относится класс.
0
DU
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
27.08.2012, 21:21 4
нужно найти хидер от этой функции и посмотреть, в каком пространстве имен эта функция объявлена.
Может оказаться так, что она в глобальном пространстве. И если в нем же присутствует еще одно такое имя, то тут у компилятора возникают к вам вопросы. Нужно или имя поменять, или засунуть его в какое-нибудь пространство имен. Или еще что-то сочинить. Сперва проблему до конца нужно понять.
0
3 / 3 / 0
Регистрация: 04.01.2011
Сообщений: 37
27.08.2012, 22:37  [ТС] 5
Спасибо за ответы, нашел хедер файл - WinGDI.h, просмотрел, не нашел указаний на namespace.

Вообще, более конкретный вопрос - возможно ли явно указать функциям типа Ellipse, LineTo, SelectObject, DeleteObject, CreatePen, и множеству других winapi'шных, явно задать пространство имён?
Если возможно, то какое у этого пространства название? Если невозможно, почему?
0
DU
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
27.08.2012, 22:44 6
ну значит речь идет о глобальном пространстве имен. а это просто ::
т.е.
::LineTo(...);
::SelectObject(...);
и т.д.
2
3 / 3 / 0
Регистрация: 04.01.2011
Сообщений: 37
27.08.2012, 23:15  [ТС] 7
Воот оно, то что нужно, совсем забыл про это, спасибо!
1
27.08.2012, 23:15
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.08.2012, 23:15
Помогаю со студенческими работами здесь

Пространство имен
Здравствуйте, имеется код : triangle.h #ifndef TRIANGLE_H_INCLUDED #define...

Пространство имен
Подскажите, пожалуйста. Если я создам своё пространство имен и в нем создам функцию, например,...

Пространство имен
Я часто встречаю в книгах, туторах, что объявлять пространство имен в больших проектах нельзя(не...

Пространство имен
Зачем пространство имен в программировании я чет не понимаю? У мну в учебнике отак написано....


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru