作者janetlai22 (little fox)
看板EE_DSnP
標題[問題] cirgate...
時間Sun Dec 25 22:34:16 2011
不好意思打擾大家了
我把optimize()寫在老師標註的//下方寫好後
(包含po,aig,cirgate ciropt.cpp裡頭也寫好了)
在ciropt中用老師的poList去呼叫CirPoGate中的optimize
並以opt01.aag做測試,結果出現以下狀況:
1.印出po 3 2 (剛剛好是optimize()函式下方的printgate()
2.若在ciropt.cpp中不呼叫optimize()而呼叫printgate()會出現segmentation fault
3.把optimize往上移到isUndef下方連ciropt.cpp呼叫optimize都segmentation fault
4.把cirgate中的virtual optimize()刪掉,直接執行CirPoGate中的optimize可以work
5.同4,甚至把CirPoGate 中的printGate打上//,在ciropt中呼叫printgate仍印出
po 3 2,可是原function virtual=0
6.跑去run gdb,要設breakpoint卻沒有optimize()函式
7.把optimize換別的名稱也沒用...仍舊印出po 3 2
不知道會發生上述情況有可能是甚麼原因
不好意思還煩請大家幫忙解答了:( 謝謝你們
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.168.76.49
1F:推 ric2k1:不太懂你第一點的意思是? 12/25 23:40
2F:→ janetlai22:就是我的optimize沒有要他印東西,可是他卻印出了print 12/26 14:00
3F:→ janetlai22:Gate()的東西...不了解原因是甚麼...老師謝謝你:) 12/26 14:01
4F:推 ric2k1:解決了嗎? 是頗奇怪。如果解決不了請把code tar 給我看一下 12/27 00:02
5F:→ janetlai22:還沒耶:)不過教授謝謝你~ 12/28 00:58