![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| ANTON_AL |
|
||||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 292 Регистрация: 27.1.2007 Репутация: нет Всего: нет |
Доброго дня!
Попробовал написать такие строки: a.h
main.cpp
Студия ушла в себя на 2 минуты, в итоге выдала 277 ошибок:
Когда выношу <windows.h> за пределы namespace: a.h
. . . всё собирается без ошибок. Как такое понимать ?? Это сообщение отредактировал(а) ANTON_AL - 19.8.2007, 11:11 |
||||||||
|
|||||||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Думаю примерно так: в d3d9.h используются typdef'ы из windows.h, но все они находятся в пространстве имён и, соответственно, недоступны в d3d9.h, несмотря на то, что он, возможно, делает собственный #include <windows.h> - стражи #ifndef->#define->#endif делают своё дело.
И ещё, извиняюсь за глупый вопрос: а разве windows.h - это не туева хуча extern "C" конструкций, которым в пространстве имён вроде как(??) не место, а даже если и место, то разве не упадёт линкер при поиске в библиотеке имён с префиксом Platform_Win32::? -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Не забывайте о том, что директива #include - это прямая вставка текста. Просишь вставить внутрь пространства имен - какие вопросы, вставим. Только потом без претензий к компилятору, пжлст.
Макроопределениям же (#define) пространства имен по барабану. А вот все структуры оказываются в нем, в пространстве этом (т.е. ты это компилятору обещаешь), а потом оказывается, что обманываешь. -------------------- ... |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |