std::uninitialized_construct_using_allocator
From cppreference.com
| ヘッダ <memory> で定義 |
||
| template< class T, class Alloc, class... Args > constexpr T* uninitialized_construct_using_allocator( T* p, |
(C++20以降) | |
未初期化のメモリ位置 p に、uses-allocator construction を用いて、指定された型 T のオブジェクトを構築します。
以下と等価です。
return std::apply( [&]<class... Xs>(Xs&&...xs) { return std::construct_at(p, std::forward<Xs>(xs)...); }, std::uses_allocator_construction_args<T>(alloc, std::forward<Args>(args)...));
目次 |
[編集] パラメータ
| p | - | オブジェクトが配置されるメモリ位置 |
| alloc | - | 使用するアロケータ |
| args | - | T のコンストラクタに渡す引数 |
[編集] 戻り値
新しく作成された型 T のオブジェクトへのポインタ。
[編集] 例外
T のコンストラクタによって投げられる例外を投げる可能性があります。典型的には std::bad_alloc を含みます。
[編集] 例
| このセクションは未完成です 理由: 例がありません |
[編集] 関連項目
| (C++11) |
指定された型が uses-allocator 構築をサポートしているかどうかをチェックします (クラステンプレート) |
| (C++20) |
uses-allocator 構築によって、与えられた型のオブジェクトを作成します (関数テンプレート) |