(仮想デストラクタを使用して)C ++でクラスをオーバーライドする場合、継承クラスに仮想としてデストラクタを再度実装していますが、基本デストラクタを呼び出す必要がありますか?
もしそうなら、私はそれがこのようなものだと思います...
MyChildClass::~MyChildClass() // virtual in header
{
// Call to base destructor...
this->MyBaseClass::~MyBaseClass();
// Some destructing specific to MyChildClass
}
私は正しいですか?
いいえ、デストラクタは構築の逆の順序で自動的に呼び出されます。(基本クラスは最後です)。基本クラスのデストラクタを呼び出さないでください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加