以下是绘制矩形的代码,但在 glutdisplayFunc() 中出现错误。我该如何解决?
#include <iostream>
#include <glut.h>
using namespace std;
class GUI
{
public:
int W,H;
GUI()
{
W = 800;
H = 600;
glClearColor(0, 0, 0, 0);
gluOrtho2D(-W, W, -H, H);
glMatrixMode(GL_PROJECTION);
}
void display()
{
glBegin(GL_POLYGON);
glVertex2d(-500, 300);
glVertex2d(500, 300);
glVertex2d(500, -300);
glVertex2d(-500, -300);
glEnd();
glFlush();
}
};
int main(int argv, char **argc)
{
GUI ob;
glutInit(&argv, argc);
glutInitDisplayMode(GLUT_RGB|GLUT_SINGLE);
glutInitWindowSize(ob.W, ob.H);
glutInitWindowPosition(100, 100);
glutCreateWindow("Queen Problem");
glutDisplayFunc(ob.display); //Error
glutMainLoop();
return 0;
}
我正在使用Visual Studio 2010。我在OpenGL中创建了一些程序,但没有任何类。这是我在 OpenGL 中使用类的第一次体验。
错误是:
错误 1 错误 C3867: 'GUI::display': 函数调用缺少参数列表;使用 '&GUI::display' 创建指向成员的指针。
我尝试使用&GUI::display
,但它也导致了错误。