症状

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

原因

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

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

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

解决方法

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

QActionGroup mProtocolGroup;
mProtocolGroup(this)

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

相关文章:

  • 2022-02-17
  • 2022-02-07
  • 2021-12-22
  • 2021-04-27
  • 2021-07-03
  • 2022-01-13
  • 2021-12-04
  • 2021-12-16
猜你喜欢
  • 2021-07-17
  • 2021-05-19
  • 2021-09-25
  • 2021-10-04
  • 2022-12-23
相关资源
相似解决方案