作者adrianshum (Alien)
看板C_and_CPP
標題Re: [問題] QT 的 destructor
時間Mon Aug 17 18:46:10 2009
※ 引述《hnaxiorll (fairyland)》之銘言:
: 大家好 m( ̄▽ ̄)m 小弟和同學 最近在學QT4遇到一個困擾
: 就是他寫了一個 介面class 繼承於QWidget
: 建構子 解構子 是不會被繼承下來 必須自己在重刻(redefine)
: 但是為什麼有時候可以不用redefine解構子??
: 這樣記憶體不會有問題嗎??
: 可以請各位幫忙解答一下 感謝各位
你大概沒學好 C++ 吧... 這些問題和QT 應該沒關
ctor 所謂沒繼承下來, 是指 child class 不會直接有
與 parent class 一樣的 ctor (當然, no-arg ctor 除外)
但每個 child class 建構的時候, 都會 invoke parent class
的 ctor (by default 是 no-arg 那個)
dtor 也是類似, 當 obj 解構時, 會先跑自己的 dtor, 跑完
後會繼續跑 parent class 的 dtor. (當然, 要跑得對也要
有 virtual dtor, 但這是另一個話題了)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 202.155.236.82
推 hnaxiorll:恩...看來真的要重修了QWQ 08/17 19:00
→ QQting:可以請板友解釋一下第二篇回覆的 quoted 是什麼意思嗎@@? 08/17 20:36
→ QQting:因為我找到的一些資料都說 QT 的 dtor 不需要寫 08/17 20:36
推 QQting:我也不確定是不是都不用寫 還是某些情況才要寫 08/17 20:50