C++Builder
Начало
Форум
Помощь
Войти
Регистрация
C++Builder
>
Forum
>
Вопросы программирования
>
Общие вопросы программирования в C++Builder
>
OpenGL include
Страниц: [
1
]
Вниз
Печать
Автор
Тема: OpenGL include (Прочитано 1472 раз)
DimaKor
Участник
Сказали спасибо: +1/-0
Offline
Сообщений: 22
OpenGL include
«
:
16 Июль 2015, 15:00:51 »
Почему в главной форме
#include
#include
отлично работает. А когда подсоединяешь к проекту новый юнит и делаешь отдельный класс (даже безо всякого упоминания OpenGL), то на те же самые строчки получаешь миллион ошибок о multiple declaration?
Форма .h:
Код:
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include
#include
#include
#include
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published:
// IDE-managed Components
private:
// User declarations
public:
// User declarations
__fastcall TForm1(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
класс .h:
Код:
//---------------------------------------------------------------------------
#include
#include
class GLdraw
{
public:
void __fastcall SetProjection(float width, float height);
protected:
float w, h; // ширина, высота
};
Записан
POV
Участник
Сказали спасибо: +107/-7
Offline
Сообщений: 640
Re: OpenGL include
«
Ответ #1 :
16 Июль 2015, 15:55:48 »
Значит новый юнит цепляется много раз. А юнит формы взят в "оборону"
#ifndef Unit1H
#define Unit1H
#ednif
Записан
DimaKor
Участник
Сказали спасибо: +1/-0
Offline
Сообщений: 22
Re: OpenGL include
«
Ответ #2 :
16 Июль 2015, 15:58:00 »
Я нашел все таки решение, тут сложнее. Почему то перед include OpenGL хедеров необходимо включить windows.h
#include
#include
#include
так работает.
Видимо в h файле главной формы он включен неявно
Записан
S0mbre
Глобальный модератор
Сказали спасибо: +1113/-22
Offline
Сообщений: 2132
S0mbre
Re: OpenGL include
«
Ответ #3 :
18 Июль 2015, 00:56:14 »
Да, это единственное решение для сторонних библиотек (не только GLUT / OpenGL) - подключать windows.h до всех остальных заголовков.
Записан
Страниц: [
1
]
Вверх
Печать
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Вопросы программирования
-----------------------------
=> Общие вопросы программирования в C++Builder
=> Программирование с FMX
=> Работа с базами данных в C++Builder
=> Windows API
=> Технологии COM/DCOM, ActiveX
=> Аспекты и идеология профессиональной разработки ПО
=> Компьютерное железо и системное администрирование
=> студенческий городок
-----------------------------
Обсуждение материалов на сайте
-----------------------------
=> Обсуждений статей на сайте
=> Обсуждение материалов из файлового архива
=> Компоненты сторонних разработчиков к С++Builder
-----------------------------
Работа сайта и новости
-----------------------------
=> Ищу/предлагаю работу
=> Новости из мира программирования
=> Новости - события календаря
=> Голосования
=> Компьютерный юмор и приколы
=> Работа сайта
=> Флейм
-----------------------------
FAQ - частозадаваемые вопросы/ответы
-----------------------------
=> FAQ, общие вопросы, посвящённые C++Builder
=> FAQ, вопросы по базам данных
=> FAQ, вопросы по компонентам
Загружается...