3

C++ でメソッドをコンストラクタではなくデストラクタに指定するにはどうすればよいですか? これは私をとても混乱させます。両者の違いがわかりません。

4

2 に答える 2

14

次に例を示します。

MyClass::MyClass()   // Constructor 
MyClass::~MyClass()  // Destructor

デストラクタの前の「~」に注意してください。

于 2009-07-03T00:05:45.777 に答える
5

そのクラスから派生することを計画している場合は、次のように.hファイルに仮想を追加する必要があります。


class MyClass
{
  MyClass();   // Constructor 
  virtual ~MyClass();  // Destructor
};

これにより、派生クラスが破棄されたときに、基本クラスと派生クラスの両方のデストラクタが確実に呼び出されます。

于 2009-07-03T01:35:07.513 に答える