作者pseudobay (懷錶)
看板C_and_CPP
標題[問題] 請教一下,如何呼叫destructor呢?
時間Sat May 9 20:27:43 2009
是這樣的,我正在寫某個程式用來模擬細菌族群的行為
其中我寫了一個class叫germ用來代表細菌,我希望在細菌死亡的時候可以
由我主動呼叫germ的destructor來回收記憶體
但初學者我的認知是: destructor只能由編譯器決定呼叫時機
不知道各位先進們有沒有辦法實現主動呼叫destrutor的方法呢?或是等效的這麼做?
PS.我用的是C++ 非C
先多謝各位指教了~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.136.37.165
1F:推 littleshan:用 new 建立物件,用 delete 時即呼叫 destructor 05/09 20:53
2F:→ pseudobay:那有沒有可能由物件本身來delete自己呢? 我希望細菌在 05/09 20:58
3F:→ pseudobay:知道自己生命力降到零時乖乖的主動死掉...而不需要我動 05/09 20:59
4F:→ pseudobay:手在main中delete它 也就是delete的條件是由object中 05/09 21:00
5F:→ pseudobay:的變數來決定,這時候我也希望"死掉"這動作是用class中的 05/09 21:01
6F:→ pseudobay:函數來執行... 但爬文後發現delete this這方法似乎 05/09 21:02
7F:→ pseudobay:不太好... 所以現在也不知怎麼做(抱歉我很外行T_T") 05/09 21:03
8F:→ ccbruce:用個迴圈一個個pool吧... 05/09 21:14
9F:→ ccbruce:一直new一直delete...這個程式鐵定跑不久 05/09 21:16
10F:推 snowlike:你是如何讓obj做hp遞減的?當下判斷小於零就delete該obj 05/09 21:26