ASSERT failure in QList<T>::at: "index out of range", file ../../../../Qt/5.15.0/gcc_64/include/QtCore/qlist.h, line 571
时间: 2023-10-06 10:13:27 浏览: 104
Assertions-in-java.rar_REvision_site:www.pudn.com
这个错误的意思是 QList<T>::at 函数中的索引超出了 QList 的范围,即尝试访问一个不存在的元素。可以检查一下你的代码,确认一下是否有以下情况:
1. 在 QList 中访问了一个不存在的元素,例如超出了 QList 的大小范围。
2. 在使用 QList 的时候,有其他的线程修改了 QList 的内容,导致你访问的元素已经被删除。
你可以在调用 QList 的 at 函数之前,先使用 size() 函数来获取 QList 的大小,确保你要访问的元素不会超出范围。此外,还可以使用 QList 的其他函数来避免出现这种错误,例如 value() 函数。如果你的代码中有多线程的情况,可以考虑使用 QMutex 或者 QReadWriteLock 来保护 QList 的访问。
阅读全文