我遇到了相當複雜的代碼問題。我無法制作出能夠再現錯誤的短片段,因此我會盡力用文字解釋這個問題。什麼會導致「雙鏈表損壞」錯誤?
的代碼與錯誤
*** glibc detected *** gravtree: corrupted double-linked list: 0x000000001aa0fc50 ***
隨機崩潰調試表明,它來自在代碼釋放的對象的行。對象似乎沒有錯。它存在,我可以在錯誤發生時訪問它的數據。對象的析構函數是微不足道的,並且什麼也不做。
所以,我有點卡住了。你認爲在什麼樣的情況下'自由'失敗?
聽起來像你最有可能在其他地方破壞你的記憶,這只是一個副作用。 – 2009-11-30 13:59:41