0

我有一个 QVariantList。我怎样才能清空它。

我试过了

myList.clear()

myList.empty();

但没有运气。有任何想法吗?

4

1 回答 1

3

AQVariantList只是一个QList<QVariant>. 所以看看QList 文档

  • QList::clear():从列表中删除所有项目。
  • QList::empty():提供此功能是为了兼容 STL。它等效于 isEmpty() 并且如果列表为空则返回 true。

这清楚地说明了为什么myList.empty();不起作用。但是,myList.clear()应该可以工作,因此您的代码中的其他地方可能有错误。

只是为了仔细检查,qDebug() << list.length();在该list.clear();行之后添加类似的内容:

QVariantList list;
list << 42;
qDebug() << list.length();
list.clear();
qDebug() << list.length();

给出:

1
0
于 2012-12-26T20:46:12.270 回答