我對QT沒有多少經驗,今天出現這個問題。QList中的動態內存
QList<int> memList;
const int large = 100000;
getchar();
for (int i=0; i<large; i++)
{
memList.append(i);
}
cout << memList.size() << endl;
getchar();
for (int i=0; i<large; i++)
{
memList.removeLast();
}
cout << memList.size() << endl;
getchar();
第一循環後,當我查看內存使用它上升爲新的元素被添加到memList
,但第二循環中取出之後,內存使用率保持在同一水平。我認爲QList
是動態的,當元素被移除時它會釋放內存。所以要麼我錯過了一些東西(非常可能),或者它不是動態結構。你有什麼想法如何使它工作?
問候
但使用刪除,不會我需要將其聲明爲指針的QList *的memlist ;? –
2010-02-09 16:38:10
@有趣的人,是的,你需要使用新的 – Glen 2010-02-09 16:52:34