Форум программистов, компьютерный форум CyberForum.ru

Непонятка с заголовочными файлами - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.75
savak
2 / 2 / 0
Регистрация: 28.03.2009
Сообщений: 61
30.07.2011, 14:57     Непонятка с заголовочными файлами #1
game.h
C++
1
2
3
4
5
6
7
8
9
10
#ifndef _GAME_H_
#define _GAME_H_
 
#include <gl\gl.h>          
#include <gl\glu.h>         
 
#pragma comment (lib, "opengl32.lib")
#pragma comment (lib, "glu32.lib")
 
#endif
game.cpp
C++
1
#include "game.h"
Почему то такой код не работает. Выдает просто миллион ошибок в заголовочном файле gl.h . Зато стоит убрать из game.cpp единственную строчку #include "game.h", все становится в полном порядке. Но стоит в какой нибудь файл подключить game.h, снова миллион ошибок. Кто нибудь объяснит с чем это связано?

Пример ошибок
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1152): error C2144: syntax error : 'void' should be preceded by ';'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1152): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1152): error C2146: syntax error : missing ';' before identifier 'glAccum'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1152): error C2182: 'APIENTRY' : illegal use of type 'void'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1152): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1153): error C2144: syntax error : 'void' should be preceded by ';'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1153): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1153): error C2086: 'int WINGDIAPI' : redefinition
1>          c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1152) : see declaration of 'WINGDIAPI'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1153): error C2146: syntax error : missing ';' before identifier 'glAlphaFunc'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1153): error C2182: 'APIENTRY' : illegal use of type 'void'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1153): error C2086: 'int APIENTRY' : redefinition
1>          c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1152) : see declaration of 'APIENTRY'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1153): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1154): error C2146: syntax error : missing ';' before identifier 'GLboolean'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1154): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1154): error C2086: 'int WINGDIAPI' : redefinition
1>          c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1152) : see declaration of 'WINGDIAPI'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1154): error C2146: syntax error : missing ';' before identifier 'glAreTexturesResident'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1154): error C2371: 'APIENTRY' : redefinition; different basic types
1>          c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1152) : see declaration of 'APIENTRY'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1154): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1155): error C2144: syntax error : 'void' should be preceded by ';'
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1155): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\program files\microsoft sdks\windows\v7.0a\include\gl\gl.h(1155): error C2086: 'int WINGDIAPI' : redefinition
и т.д. Не стану приводить все ошибки ибо их там слишком много!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
S.L.I.M.
15 / 12 / 2
Регистрация: 03.02.2011
Сообщений: 96
30.07.2011, 15:30     Непонятка с заголовочными файлами #2
пока понятно, что проблема в подключении библиотек
C++
1
2
#include <gl\gl.h>                      
#include <gl\glu.h>
а что за библиотеки?
savak
2 / 2 / 0
Регистрация: 28.03.2009
Сообщений: 61
30.07.2011, 15:56  [ТС]     Непонятка с заголовочными файлами #3
openGL библиотеки, но с ними все в порядке, то есть если я в main их подключаю, и там все пишу, то никаких ошибок, и все отлично запускается. Но стоит мне подключение этих библиотек в ашки вынести начинаются проблемы.
Jupiter
Каратель
Эксперт C++
6543 / 3963 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
30.07.2011, 15:59     Непонятка с заголовочными файлами #4
savak, какая IDE ?
savak
2 / 2 / 0
Регистрация: 28.03.2009
Сообщений: 61
30.07.2011, 16:03  [ТС]     Непонятка с заголовочными файлами #5
visual studio 10 ultimate
Yandex
Объявления
30.07.2011, 16:03     Непонятка с заголовочными файлами
Ответ Создать тему
Опции темы

Текущее время: 03:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru