指针错误调试帮助

| 我是C ++的新手,我试图在Visual Studio 2010中使用freeglut对Pong的副本进行编程。我的代码运行良好,直到对其进行了一些修订以使其更加面向对象。当我再次运行它时,它工作了好几次,直到我做了一些小的编辑(老实说,我不记得更改了什么,因为我第二天才创建了代码),然后我收到了我运行程序后立即出现此运行时错误: Pong.exe中0x1000bbae处未处理的异常:0xC0000005:访问冲突写入位置0x000000a8。 我不是特别擅长调试,但是我相信这是在我的主循环中的glutDisplayFunc()行实现的。我认为这与空指针有关,但我不知道该怎么办。有人可以帮我找到我的问题吗? 以下是我的程序(Main.cpp)的适用部分:
include \"header.h\"

using namespace std;

int main(int argc, char** argv) {
    //Initialize GLUT
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
    glutInitWindowSize(WIDTH, HEIGHT); //Set the window size

    //Create the window
    //modesetup(2);
    //Set handler functions for drawing, keypresses, and window resizes
    glutDisplayFunc(mainDraw);
    glutKeyboardFunc(handleKeypress);
    glutKeyboardUpFunc(handleKeyup);
    glutSpecialFunc(handleSpecial);
    glutSpecialUpFunc(handleSpecialUp);
    glutReshapeFunc(handleResize);
    glutTimerFunc(25, update, 0);

    glutMainLoop(); //Start the main loop.  glutMainLoop doesn\'t return.
    return 0; //This line is never reached
}
提前致谢! 编辑:我刚刚做了一个新程序,它对所有内容都使用非常标准的功能,但是我仍然收到此错误。我开始认为我的freeglut安装可能有问题。     
已邀请:
        使用F5在Visual Studio中调试运行程序。当您收到错误消息时,调试器应将您置于非法访问的行上。如果该位置没有源代码,则检查调用堆栈。 干杯和健康。     
        在valgrind下运行程序。它会为您提供有关该问题的更多信息,甚至可能指出内存错误,而不是崩溃的直接原因。     
        您可能已经解决了问题。但是由于我有同样的问题,在任何地方都找不到答案二,所以我会回答这个问题: 您只是忘了写
glutCreateWindow(\"Windowname\");
之前的功能
glutDisplayFunc(mainDraw);
glutKeyboardFunc(handleKeypress);
glutKeyboardUpFunc(handleKeyup);
glutSpecialFunc(handleSpecial);
glutSpecialUpFunc(handleSpecialUp);
glutReshapeFunc(handleResize);
glutTimerFunc(25, update, 0);
部分。 这导致您得到异常。     

要回复问题请先登录注册