我有一个QVector
QVector<const ClassA*> list; 在这种情况下,我想知道怎样才是清除QVector的最佳方法。
ClassA不是QObject。
发布于 2020-07-07 14:50:44
下面是两行代码:
while (list.count())
delete list.takeLast();发布于 2020-07-07 12:25:44
请看一下QVector.clear()的文档--我认为它很好地回答了您的问题。
为了保存它,我在这里复制了它:
void QVector::clear()
从向量中移除所有元素。
注释:直到QT5.6,这也释放了向量所使用的内存。从Qt 5.7开始,容量保持不变。若要释放所有容量,请使用默认构造的向量交换:
QVector<T> v ...;
QVector<T>().swap(v);
Q_ASSERT(v.capacity() == 0);或者打电话给squeeze()。
发布于 2020-07-08 08:51:40
https://stackoverflow.com/questions/62775232
复制相似问题