OSG示例代码运行时,gl.h出现错误

运行OSG自带的示例代码osgrobot时候,出现如下错误:
1>  osgrobot.cpp
1>c:\program files (x86)\windows kits\8.1\include\um\gl\gl.h(1157): error C2144: 语法错误:“void”的前面应有“;”
1>c:\program files (x86)\windows kits\8.1\include\um\gl\gl.h(1157): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\windows kits\8.1\include\um\gl\gl.h(1158): error C2144: 语法错误:“void”的前面应有“;”
1>c:\program files (x86)\windows kits\8.1\include\um\gl\gl.h(1158): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\windows kits\8.1\include\um\gl\gl.h(1158): error C2086: “int WINGDIAPI”: 重定义
1>  c:\program files (x86)\windows kits\8.1\include\um\gl\gl.h(1157): note: 参见“WINGDIAPI”的声明
1>c:\program files (x86)\windows kits\8.1\include\um\gl\gl.h(1159): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\windows kits\8.1\include\um\gl\gl.h(1159): error C2086: “int WINGDIAPI”: 重定义
1>  c:\program files (x86)\windows kits\8.1\include\um\gl\gl.h(1157): note: 参见“WINGDIAPI”的声明
......


解决方法:
在所有头文件之前,添加如下代码:
#include <Windows.h>
如下所示:



posted @ 2019-07-22 21:27  自然醒zc  阅读(986)  评论(0编辑  收藏  举报