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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.75
savak
2 / 2 / 0
Регистрация: 28.03.2009
Сообщений: 61
#1

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

30.07.2011, 14:57. Просмотров 1054. Ответов 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++):

Работа с заголовочными файлами - C++
Приветствую! Простейшая программа с подключением заголовочного файла выдаёт следующие ошибки: 1) main.cpp: (.text+0x32):...

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

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

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

Как пользоваться заголовочными файлами и использовать несколько исходных файлов? - C++
Как пользоваться несколькими файлами cpp, и заголовками h , в Visual Studio WIN32 C++ Дайте пожалуйста инфу, или статью , как...

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

4
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>
а что за библиотеки?
0
savak
2 / 2 / 0
Регистрация: 28.03.2009
Сообщений: 61
30.07.2011, 15:56  [ТС] #3
openGL библиотеки, но с ними все в порядке, то есть если я в main их подключаю, и там все пишу, то никаких ошибок, и все отлично запускается. Но стоит мне подключение этих библиотек в ашки вынести начинаются проблемы.
0
Jupiter
Каратель
Эксперт С++
6556 / 3977 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
30.07.2011, 15:59 #4
savak, какая IDE ?
0
savak
2 / 2 / 0
Регистрация: 28.03.2009
Сообщений: 61
30.07.2011, 16:03  [ТС] #5
visual studio 10 ultimate
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.07.2011, 16:03
Привет! Вот еще темы с ответами:

Непонятка с float - C++
float s = (123 * 100 / 360000); cout &lt;&lt; fixed &lt;&lt; setprecision(3) &lt;&lt; s; По идее, в консоли должно вывести &quot;0,034&quot;, но видимо с++ не...

Непонятка с указателями - C++
Как так что если указатель на int он покажет свой адрес а на char покажет символ свой. int * pointerInt = new int; char *...

fstream непонятка - C++
скажите,плз,правильно ли я открываю файл с fstream, и где должен лежать сам файл? #include &lt;fstream&gt; #include &lt;iostream&gt; #include...

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


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

Или воспользуйтесь поиском по форуму:
5
Yandex
Объявления
30.07.2011, 16:03
Ответ Создать тему
Опции темы

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