博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《OpenGL编程指南第七版》学习——编译时提示“error C2381: “exit” : 重定义;__declspec(noreturn) 不同”错误的解决办法...
阅读量:7235 次
发布时间:2019-06-29

本文共 574 字,大约阅读时间需要 1 分钟。

解决办法
一、

#if defined(_WIN32)

# ifndef GLUT_BUILDING_LIB

extern _CRTIMP void __cdecl exit(int);

上面是glut.h中对exit的使用,意思是如果没有定义宏‍GLUT_BUILDING_LIB,就使用它的exit,那我们就在项目的属性——预处理器 里定义这个宏,这样就不执行glut.h中的exit了,而只执行stdlib.h中的exit。这样也就不会冲突了。对了,还要在附加依赖项里手动加上‍glut32.lib glu32.lib opengl32.lib,因为我们定义了‍宏‍GLUT_BUILDING_LIB,glut.h文件就不会为我们自动生成这三个附加依赖项了。

 

 

二、

stdlib.h(406)   :   error   C2381:   “exit”:   重定义;__declspec(noreturn)   不同   
  glut.h(146)   :   参见“exit”的声明  
解决方法:#include <GL/glut.h>
                    #include <stdlib.h>
改成:
                    #include <stdlib.h>
                    #include <GL/glut.h>
通过。
OpenGL和C++有不太融合的地方,在include时要让标准C++类库的头文件位于GLUT图形库头文件之前。

转载地址:http://qslfm.baihongyu.com/

你可能感兴趣的文章
在旋转有序数组内找特定的值
查看>>
UVa 127 - &quot;Accordian&quot; Patience POJ 1214 链表题解
查看>>
oracle中Window和Window Group
查看>>
WCF NetTcpBinding Transport安全模式(3) ProtectionLevel设置保护级别
查看>>
WinRAR命令行参数[转]
查看>>
Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (高级)
查看>>
使用Container.ItemIndex获取Repeater、Gridview行的序号的简单方法
查看>>
F#系列随笔索引
查看>>
Mac OS X 10.10优胜美地怎样完美接管iphone上的电话和短信
查看>>
dotnet程序优化心得(一)
查看>>
妙趣横生的算法--二叉树
查看>>
发布了Android的App,我要开源几个组件!
查看>>
PHP foreach使用
查看>>
《基于MFC的OpenGL编程》Part 13 Creating 2D and 3D Text
查看>>
HTML5 移动浏览器支持
查看>>
[LeetCode] Next Closest Time 下一个最近时间点
查看>>
【AngularJS】—— 4 表达式
查看>>
[LeetCode] Surrounded Regions
查看>>
【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性
查看>>
U盘启动笔记本无法安装Win7问题和解决
查看>>