zoukankan      html  css  js  c++  java
  • Qt出现堆溢出(Error Code -1073741823)

    症状

    在使用Debug模式时,程序可以正常启动,但是切换到Release模式,程序报错,错误码-1073741823

    原因

    程序中使用了过多的new。比如:

    QActionGroup *mProtocolGroup;
    mLidarTypeSelGroup = new QActionGroup(this);
    

    这个heap是在构造函数期间申请的,也就是说在整个程序运行期间,都会占用heap。然而,系统给程序的堆的空间是有限的。当占用堆过多就会出错。

    解决方法

    将new方法改成局部变量,比如上面的改成

    QActionGroup mProtocolGroup;
    mProtocolGroup(this)

    这样内存分配到stack区,就没有这个问题了。

  • 相关阅读:
    z-index优先级小结
    如何消除img间的默认间隙
    text-align和vertical-align
    HTTP
    HTTP
    HTTP
    HTTP
    ES6标准入门
    ES6标准入门
    ES6标准入门
  • 原文地址:https://www.cnblogs.com/WeyneChen/p/6672162.html
Copyright © 2011-2022 走看看