我正在学习编写OpenGL程序。到目前为止,我一直在使用C,但是我意识到随着程序的参与度越来越高,以一种更加面向对象的方式进行编程可能会很好,因此我正在C ++中建立一个框架程序。

这个程序再简单不过了。除了我得到这个错误:

No matching function for call to glutInit()

我在其他帖子中也看到了此错误,并且已经实施了建议,但该错误仍然存​​在。我究竟做错了什么?谢谢!

国际象棋

#ifndef __chess1__chess1__
#define __chess1__chess1__

#include <iostream>
#include <GLUT/GLUT.h>    //edited
#endif /* defined(__chess1__chess1__) */


国际象棋

#include "chess.h"
using namespace std;

int main(int argc, char * argv[]) {

    glutInit();
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
    glutInitWindowSize(1000, 1000);
    glutCreateWindow("Chess Program");
    glutMainLoop();
    exit(0);
}

最佳答案

glutInit(int* argcp, char** argv)具有两个参数,一个是指向argc的指针,另一个是argv。应该这样称呼:glutInit(&argc, argv)

http://www.opengl.org/documentation/specs/glut/spec3/node10.html

09-06 06:11