• windows c++ 错误汇总


    1.fatal error C1900

    错误:fatal error C1900: “P1”(第“20081201”版)和“P2”(第“20080116”版)之间 Il 不匹配

    检查之后发现jepglib8c64.lib文件时LGCT库,重新编译成非LGCT库即可正常编译:

    编译方法:设置项目-->属性-->配置属性-->常规-->项目默认值-->全程序优化选择“无全程序优化”

    2

    在MFC中使用,函数调用缺少参数列表;请使用“&Dlg6::Erosion”创建指向成员的指针

    一般回调使用不正确,

    如果在类中的回调,一定声明要用static,而且在类的实现中重新赋值

    头文件中声明

    typedef void(*stream_callback)(char* fReceiveBuffer, int frameSize);
    
    class video_stream_char{
           static stream_callback    mStreamCallback;
          
    };

    类的实现中初始化

    video_stream_char* video_stream_char::vsc=nullptr;
    stream_callback    video_stream_char::mStreamCallback=nullptr;
     video_stream_char::video_stream_char(){
    
    }

    最后调用

    3.1>MSVCRT.lib(MSVCR120.dll) : error LNK2005: sprintf 已经在 中定义

    多执行线程调试 (/MTd):对应 LIBCMTD.lib   生成debug版的lib

    多执行线程 (/MT):对应 LIBCMT.lib               生成Release版的lib

    多执行线程调试 DLL (/MDd):对应 MSVCRTD.lib 生成debug版的dll

    多执行线程 DLL (/MD):对应 MSVCRT.lib 生成Release版的dll

     4

    stack around the variable '' was corrupted

    可能是数组越界,也可能是dll库有修改,头文件没更新之类的

     

    5

    CRT detected that the application wrote to memory after end of heap buffer

    数组越界

    dll导出类的成员变化(如果不想导出,设置为private 用set/get方法访问)

    dll接口变化

     

     

  • 相关阅读:
    bzoj1568: [JSOI2008]Blue Mary开公司
    bzoj3301: [USACO2011 Feb] Cow Line
    bzoj4745: [Usaco2016 Dec]Cow Checklist
    bzoj4746: [Usaco2016 Dec]Lasers and Mirrors
    bzoj2982: combination
    bzoj1822: [JSOI2010]Frozen Nova 冷冻波
    bzoj1027: [JSOI2007]合金
    bzoj 2004
    bzoj 3110&&codevs 1616
    bzoj 2134
  • 原文地址:https://www.cnblogs.com/baldermurphy/p/7763884.html
Copyright © 2020-2023  润新知