首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

<<深度探索C++对象模型>>有关问题之四

2012-02-20 
深度探索C++对象模型问题之四P193说到:以静态的方式调用....的destructor.因此我猜想,一个基类的destr

<<深度探索C++对象模型>>问题之四
P193说到:   以静态的方式调用....的destructor.

因此我猜想,   一个基类的destructor声明为virtual的作用可能仅仅在于当这种情况:

Base   *p   =   new   Derived;
delete   p;

释放*p空间时,   能够调用到   ~Derived()   从而完全地释放.

我想问的是:   为什么当~Base为virtual时,   delete   p   会调用~Derived,   而~Base为non-virtual   时,   就调用不到呢?

[解决办法]
嘿嘿,无盐。。。:)

热点排行