Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.75
savak
2 / 2 / 1
Регистрация: 28.03.2009
Сообщений: 61
#1

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

30.07.2011, 14:57. Просмотров 1081. Ответов 4
Метки нет (Все метки)

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
и т.д. Не стану приводить все ошибки ибо их там слишком много!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.07.2011, 14:57
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Непонятка с заголовочными файлами (C++):

Работа с заголовочными файлами
Приветствую! Простейшая программа с подключением заголовочного файла выдаёт...

Ошибка с заголовочными файлами
error C1014: слишком много включаемых файлов: глубина = 1024

В чем разница между заголовочными файлами и библиотеками
В чем разница между заголовочными файлами и библиотеками? И, вообще, какова...

Как пользоваться заголовочными файлами и использовать несколько исходных файлов?
Как пользоваться несколькими файлами cpp, и заголовками h , в Visual Studio...

Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами
В общем, имеется несколько классов, как водится - каждый имеет .h/.cpp. Решил...

непонятка
на парах нам учитель дает зделаную прогу как пример (скорей всего на студия-08)...

4
S.L.I.M.
15 / 12 / 4
Регистрация: 03.02.2011
Сообщений: 96
30.07.2011, 15:30 #2
пока понятно, что проблема в подключении библиотек
C++
1
2
#include <gl\gl.h>                      
#include <gl\glu.h>
а что за библиотеки?
0
savak
2 / 2 / 1
Регистрация: 28.03.2009
Сообщений: 61
30.07.2011, 15:56  [ТС] #3
openGL библиотеки, но с ними все в порядке, то есть если я в main их подключаю, и там все пишу, то никаких ошибок, и все отлично запускается. Но стоит мне подключение этих библиотек в ашки вынести начинаются проблемы.
0
Jupiter
Каратель
Эксперт С++
6568 / 3989 / 400
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
30.07.2011, 15:59 #4
savak, какая IDE ?
0
savak
2 / 2 / 1
Регистрация: 28.03.2009
Сообщений: 61
30.07.2011, 16:03  [ТС] #5
visual studio 10 ultimate
0
30.07.2011, 16:03
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.07.2011, 16:03
Привет! Вот еще темы с решениями:

Непонятка с кодировкой
Есть следующий код: #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include...

Непонятка с float
float s = (123 * 100 / 360000); cout &lt;&lt; fixed &lt;&lt; setprecision(3) &lt;&lt; s; По...

Непонятка со скобками
У меня такой вопрос: есть два куска кода, по сути одинаковых, в одном есть...

fstream непонятка
скажите,плз,правильно ли я открываю файл с fstream, и где должен лежать сам...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru