黄猿欲度愁攀援 2021-11-08 13:55 采纳率: 100%
浏览 273
已结题

Debug Assertion Failed! QT Debug关闭软件窗口报错

img


    QStringList qstrList;
    qstrList<<u8"事件列表" << u8"考核标准" <<u8"科目列表";
    QVBoxLayout* leftLayout = new QVBoxLayout;//左布局器
    QVBoxLayout* rightLayout = new QVBoxLayout;//右布局器

    QWidget* widgets = new QWidget[3];//三个控件
    QLabel* lals = new QLabel[3];
    for(int i = 0 ;i<3;i++){
        lals[i].setText(qstrList.at(i));
        leftLayout->addWidget(&lals[i],1);//加入布局器
        leftLayout->addWidget(&widgets[i],3);//加入布局器
    }

为什么QWidget和QLabel控件我用数组new出来的最后关闭软件,就会有这样的报错呀。
是我数组new的方式不对么?Debug模式关闭软件会报错,release模式会有一个程序异常结束的报错。
我只是不想一行一行的写,想用一下for循环而已。

  • 写回答

2条回答 默认 最新

  • CSDN专家-link 2021-11-08 14:08
    关注

    虽然这三个组件是在这个函数中定义的,但你使用的是动态分配空间。这个空间在函数退出时是不会自动释放的,只有关闭软件的时候才会自动回收,所以问题可能跟你这三个组件有关系

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月8日
  • 已采纳回答 11月30日
  • 修改了问题 11月8日
  • 修改了问题 11月8日
  • 展开全部

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵