名前空間
変種
操作

std::pmr::polymorphic_allocator<T>::allocate_bytes

From cppreference.com
 
 
メモリ管理ライブラリ
(説明用*)
未初期化メモリのアルゴリズム
(C++17)
(C++17)
(C++17)
制約付き未初期化
メモリアルゴリズム
Cライブラリ

アロケータ
メモリリソース
ガベージコレクションのサポート
(C++11)(C++23まで)
(C++11)(C++23まで)
(C++11)(C++23まで)
(C++11)(C++23まで)
(C++11)(C++23まで)
(C++11)(C++23まで)
未初期化ストレージ
(C++20まで*)
(C++20まで*)
明示的な生存期間管理
 
 
void* allocate_bytes( std::size_t nbytes, std::size_t alignment );
                      std::size_t alignment = alignof(std::max_align_t) );
(C++20以降)

指定されたアラインメントalignmentで、基になるメモリリソースを使用してnbytesバイトのストレージを確保します。return resource()->allocate(nbytes, alignment);と同等です。

目次

[編集] パラメータ

nbytes - 確保するバイト数
alignment - 使用するアラインメント

[編集] 戻り値

確保されたストレージへのポインタ。

[編集] 注釈

この関数は、完全特殊化されたアロケータstd::pmr::polymorphic_allocator<>との使用のために導入されましたが、任意の特殊化で役立つ場合があります。

戻り値の型はvoid*(たとえば、std::byte*ではなく)であり、static_cast<U*>による任意のポインタ型U*への変換をサポートするためです。

[編集] 例外

resource()->allocateの呼び出しによってスローされる可能性のある例外をスローする場合があります。

[編集] 関連項目

オブジェクトまたは配列に適した生メモリを割り当てる
(公開メンバ関数) [編集]
オブジェクトを割り当てて構築する
(公開メンバ関数) [編集]
メモリを割り当てる
(公開メンバ関数) [編集]
[static]
アロケータを使用して未初期化のストレージを割り当てる
(std::allocator_traits<Alloc> の public static メンバー関数) [編集]
メモリを割り当てる
(std::pmr::memory_resource の public メンバー関数) [編集]
English 日本語 中文(简体) 中文(繁體)