[問題] 多型的自動回收
我有一個 abstract class, 它有 virtual open 和 virtual close
讓底下的 subclasses override 並自訂資源獲得/釋放的方式
現在我希望讓它能保證在實體被回收時釋放資源
目前唯一想到的方法就是在 destructor 上動手腳
但是我不能在 destructor 裡呼叫 virtual functions
目前的做法是,設一個 flag 記錄開啟狀態
open 時設為 true,close 後設為 false
然後在 destructor 裡檢查這個 flag
顏色不對就記錄到 logger 或是 assert 掉(看嚴不嚴重)
請問有沒有更好的方式呢?
--
自High筆記(半荒廢)
http://legnaleurc.blogspot.com/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.205.248.119
推
10/06 16:12, , 1F
10/06 16:12, 1F
推
10/06 17:06, , 2F
10/06 17:06, 2F
→
10/06 19:20, , 3F
10/06 19:20, 3F
→
10/06 19:20, , 4F
10/06 19:20, 4F
推
10/07 10:27, , 5F
10/07 10:27, 5F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章