基本クラスでデストラクタを宣言、実装してない場合
それを派生したクラスをdeleteするとき、デクトラクタが呼ばれませんが
これはこれで 正しかったのでしょうか?
#include <stdio.h> class CBase { public: virtual void Show(); }; void CBase::Show() { printf( "CBase::Show.\n" ); } class CDev : public CBase { public: CDev(); ~CDev(); void Show(); }; CDev::CDev() { printf( "CDev construct.\n" ); } CDev::~CDev() { printf( "CDev destruct.\n" ); } void CDev::Show() { printf( "CDev::Show.\n" ); } void main() { CBase *obj = new CDev; obj->Show(); delete obj; }