看板 EE_DSnP 關於我們 聯絡資訊
剛剛看了以前討論 virtual destructor 的問題 是說如果一個 class 有 virtual function 那就應該要有 virtual destructor 那如果有一個 class P 裡面沒有 virtual function 也沒有 virtual destructor 另外有一個 class C 繼承 class P 如果用 P* p = new C; 之後 在 delete p 的時候 C 的 destructor 是不是就不會被呼叫了? 這樣會不會有什麼問題 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.218.45
ric2k1:應該是用到繼承就應該寫 virtual destructor, 與有沒有 05/26 21:23
ric2k1:virtual function 沒有關係. 05/26 21:23
Ultor:哦哦 原來如此 @___@ 05/26 21:24
ric2k1:如果沒有 virtual destructor, C 的 destructor 就不會被 05/26 21:24
ric2k1:呼叫而它的 data member 也就不會被 destructed 05/26 21:24
ric2k1:整頁被我們霸佔了... XD 05/26 21:25