3

在 QT-creator 中,我收到以下错误:

QVector::operator[] 中的 ASSERT 失败:“索引超出范围”,文件 c:\QtSDK\Desktop\Qt\4.8.1\mingw\include/QtCore/qvector.h,第 359 行

我的问题是它没有指定哪个 QVector 超出范围......即使我在调试模式下运行,我也找不到错误的位置。有没有办法轻松找到错误?代码非常庞大,并且每隔一段时间才会弹出一次错误,因此检查我单独使用的每个 qVector 需要做很多工作。

4

1 回答 1

6

假设您使用的是 Qt Creator,会有一个“堆栈”窗口显示导致程序停止点的函数调用:

堆栈窗口的图片

在该窗口中,双击您知道是您自己的文件的第一个文件,在该屏幕截图中,它是第 5 行的 main.cpp。该文件将打开并显示一个黄色箭头。导致断言的行是该黄色箭头上方的行(该箭头实际上指向将执行的下一条语句)

于 2013-01-16T10:05:29.747 回答