オブジェクトを動的に確保する

サイズを渡して、配列を作成するなど。

m_array = new double[size]; // デフォルトコンストラクタ

newをするとコンストラクタが呼ばれる。

オブジェクトが生成されるタイミングでコンストラクタが呼ばれるので、この辺は違和感ない。引数付きのコンストラクタも同じように呼べる。配列のときはデフォのみ。

deleteするときにデストラクタが呼ばれる。

deleteするときの型のデストラクタが呼ばれる。基底クラスのポインタで保持しているときは、基底クラスのデストラクタしか呼ばれない・・・これは重大なバグに!
基底クラスから、派生クラスのメソッドを呼ばせるには、もちろんvirtualが必要。基本的に、デストラクタはvirtualを着ける模様。

オブジェクトを生成して返すならnewを使う。

一次変数では、スコープを外れたら消滅するので、動的確保する必要がでてくる。