作者nnthome (nnthome)
看板EE_DSnP
標題[請益] 一個一直沒辦法解決的問題
時間Tue Jan 18 08:57:39 2011
程式寫到最後,我發現我的程式在一開始的cirr那邊有幾個BUG
就是當讀進一個電路後,在用cirr -r讀進就會crash
或是parse error後,在讀進也會crash
也就是不能重複讀電路
想請問一下大家這個問題可能是發生在哪
一開始我覺得是在destructor
但我在destructor把data member中new出來的東西都delete掉
仍然會crash
大家可不可以幫幫我
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.247.169
1F:推 ric2k1:請強者幫忙看一下... 我得去開會了... sorry. 01/18 09:08
2F:推 michael0728n:cirr -r時外面會把cirMgr* delete掉再弄一個 01/18 09:35
3F:→ michael0728n:所以你如果哪裡有清東西 destructor再清 就會crush 01/18 09:35
4F:→ michael0728n:之前這裡有搞錯過 不知道跟你的問題一不一樣就是了 01/18 09:37
5F:→ ckmarkoh:我也覺得是destructor沒弄好 01/18 09:55
6F:→ nnthome:同學不好意思可以幫我看一下code嗎我快被搞死了 01/18 10:06
7F:推 fu3mo6:我記得我一開始什麼都沒寫也能正常跑,destructor寫了也行 01/18 10:26
8F:推 MrOrz:在 gdb 裡面捕捉到 seg fault 時,打 bt 印 backtrace 呢? 01/18 10:49
9F:→ MrOrz:不過我有遇過 destructor 重複 delete,結果 bt 是空的orz 01/18 10:50
10F:→ MrOrz:bt 是空的讓我找超久,最後發現還是 destructor 的問題 :P 01/18 10:51
11F:→ nnthome:在gdb跑到seg fault打bt是會印出backtrace這是什麼問題 01/18 11:16