我開發了一個功能,以從鏈表中刪除所有節點。除最後一個節點外,所有節點都成功刪除。請幫助我爲什麼最後一個節點沒有被刪除?以下是我的代碼:C++鏈接列表刪除所有方法正在離開最後一個元素去除
void StudentLinkList::removeAll() {
StudentData *traversePointer = this->head;
while (this->head->getNext() != nullptr) {
this->head = this->head->getNext();
delete traversePointer;
traversePointer = this->head;
}
delete this->head;
}
你可能需要測試,如果這個 - >頭爲空或不是。 –
可能被拒絕了,因爲你沒有顯示任何你試圖自己解決這個問題。 – stark
如果您還沒有「刪除」功能,請進行「刪除」功能。繼續調用'remove'函數,直到'is_empty'函數(你有這些,對嗎?)返回true。 – user4581301