newの確保エラー
「Effective C++」を読んでいてハッとしたこと。
operator newは、要求されたメモリを割り当てられないときは例外を送出する。
試しにVisual Studio .NET 2003でやってみたら、確かに例外が出た。
ショック。_| ̄|○
HogeClass *pInstance = new HogeClass(); if( pInstance == NULL ) { // エラー処理 }
今までこんなコードをずっと書いてきたよ。まぁ、「古いコンパイラ」は0を返すものもあるらしいので、全部が全部だめなコードではないけれど。まだまだ勉強が足りんっす。
ところで私は古い人間でしょうか?
追記:VC6でやったら0が返ってきた。てことで、前の会社で書いたやつはOK。以後は気をつけよう。