zoukankan      html  css  js  c++  java
  • 转载:glut.h 与 stdlib.h中 的exit()重定义问题的解决

    遇到的问题,来自:http://blog.sina.com.cn/s/blog_629c53bd0100f5li.html

    出现:

    c:\codeprogram\microsoft visual studio 10.0\vc\include\stdlib.h(353): error C2381: “exit”: 重定义;__declspec(noreturn) 不同
    1> c:\program files\microsoft sdks\windows\v7.0a\include\gl\glut.h(146) : 参见“exit”的声明

    解决:

      在网上搜了解决方法:

    方案一:

        在C:\Program Files\Microsoft SDKs\Windows\v6.0A\Include\gl\glut.h的144行处,即

        #if defined(_WIN32)
        #ifndef GLUT_BUILDING_LIB

        extern _CRTIMP void __cdecl exit(init);

        把extern _CRTIMP void __cdecl exit(init);注释掉,然后添上
        #if _MSC_VER >= 1200
        _CRTIMP __declspec(noreturn) void   __cdecl abort(void);
        _CRTIMP __declspec(noreturn) void   __cdecl exit(int);
        #else
        _CRTIMP void   __cdecl abort(void);
        _CRTIMP void   __cdecl exit(int);
        #endif
    方案二:

        #include <stdlib.h>
        #include <gl/glut.h>  (Just change the definition order = 改变顺序)

        即<gl/glut.h>要放在stdlib之后包含。

     

  • 相关阅读:
    根据用户行为发送客服消息
    tp5链接访问
    统计每天分享次数总和
    csv中文乱码
    Jupyter Notebook命令
    Laplace(拉普拉斯)算子
    Sobel算子
    Opencv图像连通域
    Opencv常用函数讲解
    12306 Pytho抢票代码
  • 原文地址:https://www.cnblogs.com/Null2051/p/2508330.html
Copyright © 2011-2022 走看看