這裏是我的名單如何正確刪除列表中的對象?
list<DisplayableObject> objects;
我希望把新的顯示對象在其
我希望有一個功能能夠只是完全自由的清單,並刪除它
我見過擦除,清除等,但當我在網上閱讀時,人們說我需要明確地做到這一點,因爲這些類功能實際上不會釋放內存?
我做了一些新的方法,也不知道他們是否是正確的:
iter = objects.begin();
while (!objects.empty()) {
objects.remove(*iter);
}
objects.clear();
while (!objects.empty()) {
delete &objects.front();
objects.pop_front();
}
objects.clear();
while (!objects.empty()) {
delete &iter;
iter++;
}
objects.clear();
有沒有更好的方法?謝謝
你是什麼意思「我不知道它們是否正確」。事先檢查大小和大小後?您是否嘗試過預先打印對象,然後查看是否刪除了正確的對象? – Tas
我不知道內存是否正確釋放,或者如果有更簡單的方法來執行它 –
你的意思是'std :: list'嗎?然後只需清除()'。 – songyuanyao