エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
二流プログラマの三流な日常: operator new
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
二流プログラマの三流な日常: operator new
operator newで生成したクラスはコンストラクタを呼ばない。 他の用途としてはクラスの配列(※1)を動... operator newで生成したクラスはコンストラクタを呼ばない。 他の用途としてはクラスの配列(※1)を動的に使いたい時に便利。 T* pClsArray = new T[size]; // デフォルトコンストラクタで初期化 初期化されては困る場合に以下のようにする。 T* pClsArray = static_cast<T*>(operator new [](sizeof(T) * size)); // メモリ確保のみ ・・・ new (&pClsArray[n]) T(); // 配置newで必要な時に作成 デフォルトコンストラクタ以外もちゃんと指定できる。 メモリの解放はoperator deleteを使う。 operator delete [] (pClsArray); // メモリの解放 配置newにdeleteは要らないが、メモリの解放前にデストラクタを手動で呼び出す。 p