c++ - 静态编译过剩?

标签 c++ c compiler-construction

我已经获得了 GLUT 3.7 源代码并打开了 MSVC 项目。我在项目设置中将DLL切换为静态库,得到了一个lib。然后我在我的应用程序中链接它,并添加了 GLUT_STATIC 预处理器定义。它创建窗口并渲染我的游戏的一帧,仅此而已。而游戏在 GLUT 的动态版本中运行得很好。我做错了什么?

谢谢

似乎发生的事情是我的定时器功能没有被调用:

glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
glutInitWindowSize(640, 480);
glutCreateWindow("Game");

CubeEngine.InitEngine();

glutDisplayFunc(drawScene);
glutReshapeFunc(handleResize);
glutSpecialFunc(keyboard);
glutSpecialUpFunc(keyboardup);
glutKeyboardFunc(rkeyboard);
glutKeyboardUpFunc(rkeyboardup);
glutPassiveMotionFunc(mousemove);
glewInit();
glutTimerFunc(17, update, 0);
glutMainLoop();
void update(int val) {

    CubeEngine.UpdateLogic();

    glutPostRedisplay();
    glutTimerFunc(17, update, 0);
}

最佳答案

只是一个想法:可能是因为符号重复。您可以尝试重命名该 update 函数吗?

关于c++ - 静态编译过剩?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3637280/

相关文章:

c - 将值设置为指针会导致程序崩溃

c++ - tuple/tie的返回值优化

c++ - llvm:在函数返回之前生成清理析构函数

c - 使用 "while"检查是否有空行C

c - 如何使用layer_get_unobstructed_bounds?

compiler-construction - 写语法扩展时,是否可以查询注解类型以外的类型信息?

c++ - 代码不会使用 Eigen 库语法问题进行编译?

解析算术表达式内的表达式

c++ - 排序 vector <const char *>

c++ - 如何从类外部设置成员变量并在 C++ 中使用类内部的变量?