Re: [問題] 多型的自動回收
※ 引述《littleshan (我要加入劍道社!)》之銘言:
我想我把我的 interface 勾出來會比較清楚一點:
class Base {
public:
virtual ~Base() {
try {
close();
catch( ... ) {
// ...
}
}
void close() {
// ...
doClose();
// ...
}
private:
virtual void doClose() = 0;
};
class Derived {
virtual void doClose() {
// ...
}
};
====
也就是說在 Derived 解構完後
Base::~Base()
Base::close()
Base::doClose() <- 在這個 frame 會造成 pure virtual function call
我知道 destructor 是用 chain call, 而不是 override
所以才會有這個問題
--
自High筆記(半荒廢)
http://legnaleurc.blogspot.com/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.205.248.119
推
10/06 20:41, , 1F
10/06 20:41, 1F
→
10/06 20:59, , 2F
10/06 20:59, 2F
推
10/06 22:50, , 3F
10/06 22:50, 3F
→
10/06 22:50, , 4F
10/06 22:50, 4F
→
10/07 00:51, , 5F
10/07 00:51, 5F
→
10/07 00:55, , 6F
10/07 00:55, 6F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章