1
A
回答
1
我懷疑有人願意閱讀所有這些代碼,併爲您找到缺陷,尤其是在缺少MCVE的情況下。乍看之下有一些明顯錯誤的功能void erase(iterator it)
left->next_ = right;
right->prev_ = left;
你沒有,如果任正確檢查或左爲空,如果你刪除在開始發生或者在列表的末尾。您也應相應地修改列表front_
和back_
。
可以將這些任務之前增加一個檢查:
if(left)
left->next_ = right;
else
front_ = right;
if(right)
right->prev_ = left;
else
back_ = left;
+0
評論不適合長時間討論;這個對話已經[轉移到聊天](http://chat.stackoverflow.com/rooms/136673/discussion-on-answer-by-ash-bug-in-my-erase-function-for-linked-list) 。 –
相關問題
- 1. 錯誤調試鏈接列表函數上的分段錯誤
- 2. C - 分段錯誤 - 鏈接列表的插入錯誤函數
- 3. 鏈接列表的單個函數mergesort中的段錯誤
- 4. 擦除一系列錯誤
- 5. Python鏈接列表,刪除函數iter
- 6. 刪除鏈接列表中的鏈接
- 7. 函數中的鏈接器錯誤
- 8. 雙鏈表刪除函數錯誤
- 9. 鏈接列表中的分段錯誤
- 10. 鏈接列表實現中的錯誤
- 11. 鏈接列表中的段錯誤
- 12. 鏈接列表中的錯誤
- 13. 鏈接列表中的指針錯誤?
- 14. C seg錯誤中的鏈接列表
- 15. 刪除雙列表鏈接列表的函數C++
- 16. C和函數中的鏈接列表
- 17. 鏈接列表刪除正在刪除錯誤的節點
- 18. 排除鏈接列表中的段錯誤(核心轉儲)
- 19. 刪除鏈接列表C++中的重複項(段錯誤)
- 20. 鏈接列表 - DOS錯誤
- 21. 鏈接列表錯誤,C++
- 22. 鏈接列表錯誤 - C
- 23. 鏈接列表C錯誤
- 24. 鏈接列表SIGABRT錯誤
- 25. 使用C++中的擦除函數刪除stl列表中的對象
- 26. 鏈接列表SortedInsert()函數
- 27. 函數&&鏈接列表
- 28. 鏈接列表函數?
- 29. openCV的鏈接錯誤2.3.1 findContours函數
- 30. 內聯函數的鏈接錯誤
你應該提供問題的一個最小的再現,這是太多的代碼。 – Kelm
有2個參數擦除功能的問題,我不知道它是什麼 – bb13
一旦打印「第7行測試」程序崩潰,並且永遠不會到達主線 – bb13