C++相談室 part88
■ このスレッドは過去ログ倉庫に格納されています
0425デフォルトの名無しさん
2011/04/01(金) 12:07:52.91{
virtual ~Parent(void){}
};
class Child : public Parent
{
void ~Child(void){}
};
class Grandchild : public Child
{
void ~Grandchild(void){}
};
Parent *p1 = new Grandchild;
Child *p2 = new Grandchild;
上記のような構成の時、Childクラスのデストラクタにもvirtualを付けた方がいいのでしょうか?
C++の解説サイトを回ると付けている方が多いのですが、付けずにp1やp2のように使った場合でも問題なくデストラクタが呼ばれたので、どうするべきか悩んでいます。
virtualを付けること、付けないことによる不利益などありましたら、教えていただけるとありがたいです。
なお、コンパイラはVisual Studio 2008を使用しています。
■ このスレッドは過去ログ倉庫に格納されています