栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【使用QT工具进行软件开发之问题二】

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【使用QT工具进行软件开发之问题二】

项目场景:
在主界面使用了控件·QStackedWidget,需要在QStackedWidget控件上添加并可切换成子界面,子界面是一个数据组的显示。

问题描述:

调用子界面后编译总是出现:

ASSERT failure in QVector::operator[]: "index out of range", file F:QTQt5.12.15.12.1mingw73_64include/QtCore/qvector.h, line 437

10:59:08: 程序异常结束。

10:59:08: The process was ended forcefully.

10:59:08: G:/QT/QTcode/05/build-mainwindow-Desktop_Qt_5_12_1_MinGW_64_bit-Debug/debug/mainwindow.exe crashed.


原因分析:

子界面使用了QVector容器,此容器是没有定义大小的,主界面调用第一次子界面的时候,子界面的数组是空数组,且使用了for函数对此空数组进行了3000次循环,使用的时候未对初始状态的空数组进行处理。


解决方案:

对数组的size进行判断,开始的时候size为0,对此种情况直接return返回,否则进入下一步计算。

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/664963.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号