Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.02.2011, 14:56   #1
Dimarik
Форумчанин
 
Аватар для Dimarik
 
Регистрация: 18.04.2009
Сообщений: 688
По умолчанию подключаемые файлы

В проекте имеется 3 файла:
Window_components.h
Window_components.cpp
main.cpp
В Window_components определяется класс для создания окна.
Подключение в main
Код:
#ifndef FILE_FOO_SEEN
#define FILE_FOO_SEEN
#include "Window_components.h"
#include <Windows.h>
#endif
в
Window_components.h
Код:
#ifndef FILE_FOO_SEEN
#define FILE_FOO_SEEN
#include <Windows.h>
#endif
в Window_components.cpp
Код:
#ifndef FILE_FOO_SEEN
#define FILE_FOO_SEEN
#include "Window_components.h"
#include <Windows.h>
#include <WinUser.h>
#include <CommCtrl.h>
#endif
В результате компилятор ругается на то что не знает что такое HWND в файле Window_components.h
Но как только я убираю вот эти
#ifndef, все начинает работать. Но тогда получается windows.h по многу раз подключается.
Объясните пожалуйста как надо правильно подключать файлы и как правильно пользоваться директивой #ifndef
Dimarik вне форума Ответить с цитированием
Старый 27.02.2011, 15:00   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

http://ru.wikipedia.org/wiki/Include_guard
у каждого файла свой, а у вас общий.
windows.h их тоже имеет, потому если подключится он несколько раз то ничего страшного.
Код:
#include <WinUser.h>
#include <CommCtrl.h>
а разве эти файлы не включаются в windows.h?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не сохраняет файлы (Создает файлы пустышки) Rock231 Помощь студентам 2 25.12.2010 12:31
Самодельные устройства для ПК, подключаемые в USB,LPT,COM порты Terran Компьютерное железо 8 09.09.2010 01:42
Файлы данных.Типизированные файлы. вылка Помощь студентам 6 17.05.2010 15:42
два вредных вопроса:про асю и прикриплёные файлы файлы steck Свободное общение 3 17.06.2007 14:53