[問題] delete物件時 錯在dbgheap.c 第2072行 …

看板C_and_CPP (C/C++)作者 (emeth)時間16年前 (2009/12/05 00:59), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
遇到的問題 :   程式中有段在對多型的物件作delete時,會有機率性當在dbgheap.c的2072行 堆疊的錯誤訊息: msvcr80d.dll!_CrtIsValidHeapPointer(const void * pUserData=0x0ef72640) 行 2072 C++ msvcr80d.dll!_free_dbg_nolock(void * pUserData=0x0ef72640, int nBlockUse=1) 行 1279 + 0x9 位元組 C++ msvcr80d.dll!_free_dbg(void * pUserData=0x0ef72640, int nBlockUse=1) 行 1220 + 0xd 位元組 C++ 程式的狀態 : 刪除的物件不是陣列 是單一物件 基底類別解構子是virtual function 屬性設定中的 "執行階段程式庫" 是使用多執行緒偵錯 DLL(/MDd) 依照程式邏輯與觀察記憶體位址的狀態 物件並沒有被重複delete 希望跑出的結果:   當然是不會crash啦 >"< 請板上的大大幫忙解答 感恩<(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.11.145.183 ※ 編輯: asail0712 來自: 124.11.145.183 (12/05 01:11) ※ 編輯: asail0712 來自: 124.11.145.183 (12/05 01:34)
文章代碼(AID): #1B6K09t7 (C_and_CPP)
文章代碼(AID): #1B6K09t7 (C_and_CPP)