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

Важность очередности при подключении библиотеки GL/glut.h - C++

Восстановить пароль Регистрация
 
AmRamzes
0 / 0 / 0
Регистрация: 18.05.2015
Сообщений: 77
03.07.2015, 05:00     Важность очередности при подключении библиотеки GL/glut.h #1
Всем привет.

Пытаюсь вывести в заголовок угол поворота фигуры а он выдает вот такую ошибку:

1>------ Построение начато: проект: рисуем, Конфигурация: Debug Win32 ------
1> рисунок.cpp
1>c:\program files (x86)\microsoft visual studio 11.0\vc\include\stdlib.h(360): error C2381: exit: переопределение; __declspec(noreturn) отличается
1> c:\program files (x86)\microsoft visual studio 11.0\vc\include\gl\glut.h(146): см. объявление "exit"
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

Подскажите пожалуйста в чем проблема. Заранее спасибо

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#include<GL/glut.h>
#include<math.h>
#include<string>
#include<stdlib.h>
 
float WinWid=400.0;
float WinHei=400.0;
int Angle=0.0;
float Scale=1.0;
char buf[5];
 
void Draw()
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0, 1.0, 1.0);
 
glPushMatrix();
glRotatef(Angle, 0.0, 0.0, 1.0);
glScalef(Scale, Scale, 1.0);
 
glBegin(GL_LINES);
    for(float i=-WinWid/2; i<=WinWid/2; i+=40.0)
        {
        glVertex2f(i, -WinHei/2);
        glVertex2f(i, WinHei/2);
        }
    
    for(float i=-WinHei/2; i<=WinHei/2; i+=40.0)
        {
        glVertex2f(-WinWid/2, i);
        glVertex2f(WinWid/2, i);
        }
 
glEnd();
glutSetWindowTitle(itoa(Angle, buf, 10));
glPopMatrix();
glutSwapBuffers();
}
 
void Timer(int value)
{
    glColor3f(1.0, 1.0, 1.0);
    glutPostRedisplay();
    glutTimerFunc(50, Timer, 0);
}
 
void Keyboard(unsigned char key, int x, int y)
{
switch(key)
    {
    case 'a': Angle++;
        break;
    case 'd': Angle--;
        break;
    case 'w': Scale = Scale + 0.005;
        break;
    case 's': Scale = Scale - 0.005;
        break;
    }
}
 
void SKeyboard(int key, int x, int y)
 
{
    switch(key)
    {
    case GLUT_KEY_LEFT: Angle++;
        break;
    case GLUT_KEY_RIGHT: Angle--;
        break;
    case GLUT_KEY_UP: Scale = Scale + 0.005;
        break;
    case GLUT_KEY_DOWN: Scale = Scale - 0.005;
        break;
    }
}
 
void Initialize()
{
    glClearColor(0.0, 0.0, 0.0, 1.0);
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    glOrtho(-WinWid/2, WinWid/2, -WinHei/2, WinHei/2, -200.0, 200.0);
    glMatrixMode(GL_MODELVIEW);
}
 
int main(int argc, char** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
glutInitWindowSize(WinWid, WinHei);
glutInitWindowPosition(600, 200);
glutCreateWindow("Lesson");
glutDisplayFunc(Draw);
glutTimerFunc(50, Timer, 0);
glutKeyboardFunc(Keyboard);
glutSpecialFunc(SKeyboard);
Initialize();
glutMainLoop();
return 0;
}
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Sn1p3rOk
 Аватар для Sn1p3rOk
281 / 168 / 66
Регистрация: 19.04.2014
Сообщений: 1,078
Завершенные тесты: 2
03.07.2015, 05:45     Важность очередности при подключении библиотеки GL/glut.h #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Все очень просто.

C++
1
2
3
4
#include <stdlib.h>
#include <GL/glut.h>
#include <math.h>
#include <string>
AmRamzes
0 / 0 / 0
Регистрация: 18.05.2015
Сообщений: 77
03.07.2015, 21:03  [ТС]     Важность очередности при подключении библиотеки GL/glut.h #3
Имеет значение очередность?!? ... Не знал ... вечером попробую ... спасибо ...

Добавлено через 14 часов 37 минут
Еще раз спасибо - все работает ... а можно пояснить ... я правильно понял, есть какие то приоритет по загружаемым библиотекам?
Sn1p3rOk
 Аватар для Sn1p3rOk
281 / 168 / 66
Регистрация: 19.04.2014
Сообщений: 1,078
Завершенные тесты: 2
03.07.2015, 21:33     Важность очередности при подключении библиотеки GL/glut.h #4
Только при первом использовании. Если сейчас вы поменяете обратно, то оно запустится все равно.
AmRamzes
0 / 0 / 0
Регистрация: 18.05.2015
Сообщений: 77
04.07.2015, 03:38  [ТС]     Важность очередности при подключении библиотеки GL/glut.h #5
Вообщем если такая ошибка выходит то перемещаем загрузку библиотеки наверх?
Sn1p3rOk
 Аватар для Sn1p3rOk
281 / 168 / 66
Регистрация: 19.04.2014
Сообщений: 1,078
Завершенные тесты: 2
04.07.2015, 03:46     Важность очередности при подключении библиотеки GL/glut.h #6
В частности, да.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.07.2015, 16:02     Важность очередности при подключении библиотеки GL/glut.h
Еще ссылки по теме:

Вывести список очередности предоставления мест в общежитии. C++
C++ ошибка при подключении библиотеки
Библиотеки glut.lib и glut32.lib не могу найти C++

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

Или воспользуйтесь поиском по форуму:
AmRamzes
0 / 0 / 0
Регистрация: 18.05.2015
Сообщений: 77
04.07.2015, 16:02  [ТС]     Важность очередности при подключении библиотеки GL/glut.h #7
Ок. Спасибо.
Yandex
Объявления
04.07.2015, 16:02     Важность очередности при подключении библиотеки GL/glut.h
Ответ Создать тему
Опции темы

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