低水準のメモリ管理
提供: cppreference.com
new 式は、動的記憶域期間 (作成されたスコープに制限されない生存期間) を持つオブジェクトやオブジェクトの配列を作成する、唯一の方法です。 new 式は確保関数を呼ぶことによって記憶域を取得します。 delete 式は new 式によって作成された最も派生されたオブジェクトや配列を破壊し、解放関数を呼びます。 デフォルトの確保関数、解放関数およびそれに関連する関数、型、オブジェクトは、ヘッダ <new>
で宣言されます。
ヘッダ <new> で定義 | ||
関数 | ||
確保関数 (関数) | ||
解放関数 (関数) | ||
(C++11) | 現在の new ハンドラを取得します (関数) | |
new ハンドラを登録します (関数) | ||
クラス | ||
メモリ確保が失敗したときに投げられる例外 (クラス) | ||
(C++11) | 無効な長さの配列を確保しようとしたときに投げられる例外 (クラス) | |
例外を投げない確保関数を選択するために使用されるタグ型 (クラス) | ||
(C++17) | アライメント対応の確保関数および解放関数にアライメントを渡すために使用される型 (クラス) | |
(C++20) | operator delete の破棄削除オーバーロードを識別するために使用されるタグ型 (クラス) | |
型 | ||
new ハンドラの関数ポインタ型 (typedef) | ||
オブジェクト | ||
例外を投げない確保関数を選択するために使用される nothrow_t 型のオブジェクト (定数) |