new

読み:ニュー
外語:new 英語
発音:n(j)ú: 英語
品詞:名詞

C++/Java予約語の一つ。演算子の一つ。

ヒープ上にオブジェクトを生成する際に用いる。

C++では、実行時のオブジェクトの生成はスタックとヒープに対して行なえるが、Javaでは常にヒープに生成する。

ヒープ上に作成したオブジェクトはC++ではdelete演算子で、Javaではガベージコレクションにより解放する。

C++では、new/delete演算子を用いるため、malloc()/free()を用いる場面は殆どない。

またmallocとは違い、newでは領域確保をした後、確保したものがクラスのインスタンスであれば続いてコンストラクターを呼び出す。

なお、もし領域確保に失敗した場合、std::bad_alloc例外を送出する。