2
長時間讀寫器第一次提問問題。 我有一個FutureEvent類中的對象列表,我希望能夠像futureEvents.getNextEvent()一樣。這是目前我有哪些工作,但因爲新的呼籲,我認爲這是我的主要內存泄漏的原因。任何幫助將不勝感激。我還能如何返回指向下一個事件的指針。由於從列表中返回指向對象的指針
EVENT* FutureEvent::getNextEvent()
{
EVENT* nextEvent = new EVENT;
*nextEvent = futureEvents.front();
futureEvents.pop_front();
return nextEvent;
}
您也可以在方法參數中有EVENT *,這有助於組織代碼。調用方法的人需要提供數據結構來存儲結果,這意味着他分配內存並負責釋放內存。 – 2012-01-05 22:47:29
非常感謝通過價值解決了我的問題。非常感謝 – 2012-01-05 22:50:21
根據http://www.cplusplus.com/reference/stl/list/pop_front/,調用pop_front將調用被刪除元素的析構函數。在此點之後保持對象的訪問可能導致未定義的行爲。 – dtyler 2012-01-05 22:52:11