名前空間
変種
操作

std::scoped_allocator_adaptor

提供: cppreference.com
< cpp‎ | memory

 
 
動的メモリ管理
スマートポインタ
(C++11)
(C++11)
(C++11)
(C++17以前)
(C++11)
アロケータ
scoped_allocator_adaptor
(C++11)
メモリリソース
未初期化記憶域
(C++17)
ガベージコレクションサポート
その他
(C++20)
(C++11)
(C++11)
C のライブラリ
低水準のメモリ管理
 
std::scoped_allocator_adaptor
メンバ関数
Original:
Member functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
非メンバ関数
Original:
Non-member functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
 
ヘッダ <scoped_allocator> で定義
template< class OuterAlloc, class... InnerAlloc >
class scoped_allocator_adaptor : public OuterAlloc;
(C++11およびそれ以降)
std::scoped_allocator_adaptorクラステンプレートは、マルチレベルのコンテナ(地図などのタプルのリストのセットのベクトル)で使用することができアロケータです。これは、1つ外側のアロケータ型OuterAllocとゼロ以上の内側のアロケータ型InnerAlloc...でインスタンス化されます。 scoped_allocator_adaptorと直接構築コンテナは、その要素を割り当てることOuterAlloc使用していますが、要素がコンテナ自体である場合は、まず内側のアロケータを使用しています。内側のアロケータがあるよりコンテナに複数のレベルがある場合、そのコンテナの要素が、彼らは自分自身のコンテナである場合、2番目の内側のアロケータを使用するなど、最後の内側のアロケータはすべてさらに入れ子になったコンテナに再利用される.
Original:
The std::scoped_allocator_adaptor class template is an allocator which can be used with multilevel containers (vector of sets of lists of tuples of maps, etc). It is instantiated with one outer allocator type OuterAlloc and zero or more inner allocator types InnerAlloc.... A container constructed directly with a scoped_allocator_adaptor uses OuterAlloc to allocate its elements, but if an element is itself a container, it uses the first inner allocator. The elements of that container, if they are themselves containers, use the second inner allocator, etc. If there are more levels to the container than there are inner allocators, the last inner allocator is reused for all further nested containers.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
scoped_allocator_adaptorの目的のために、次の内側のアロケータは、AそれがコンテナであるかのようにTは再帰に参加している任意のクラスstd::uses_allocator<T,A>::value == trueある場合。さらに、std::pairscoped_allocator_adaptor::constructの特定のオーバーロードによって、このような容器として扱われます.
Original:
For the purpose of scoped_allocator_adaptor, if the next inner allocator is A, any class T for which std::uses_allocator<T,A>::value == true participates in the recursion as if it was a container. Additionally, std::pair is treated as such a container by specific overloads of scoped_allocator_adaptor::construct.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
一般的な実装では、メンバーオブジェクトとしてstd::scoped_allocator_adaptor<InnerAllocs...>のインスタンスを保持している.
Original:
Typical implementation holds an instance of a std::scoped_allocator_adaptor<InnerAllocs...> as a member object.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

目次

[編集] メンバータイプ

タイプ
Original:
Type
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Definition
outer_allocator_type OuterAlloc
inner_allocator_type scoped_allocator_adaptor<InnerAllocs...> or, if sizeof...(InnerAllocs) == 0, scoped_allocator_adaptor<OuterAlloc>
value_type std::allocator_traits<OuterAlloc>::value_type
size_type std::allocator_traits<OuterAlloc>::size_type
difference_type std::allocator_traits<OuterAlloc>::difference_type
pointer std::allocator_traits<OuterAlloc>::pointer
const_pointer std::allocator_traits<OuterAlloc>::const_pointer
void_pointer std::allocator_traits<OuterAlloc>::void_pointer
const_void_pointer std::allocator_traits<OuterAlloc>::const_void_pointer
propagate_on_container_copy_assignment
std::true_type if std::allocator_traits<A>::propagate_on_container_copy_assignment::value is true for at least one allocator A among OuterAlloc and InnerAlloc...
propagate_on_container_move_assignment
std::true_type if std::allocator_traits<A>::propagate_on_container_move_assignment::value is true for at least one allocator A among OuterAlloc and InnerAlloc...
propagate_on_container_swap
std::true_type if std::allocator_traits<A>::propagate_on_container_swap::value is true for at least one allocator A among OuterAlloc and InnerAlloc...
rebind
template< class T >
struct rebind {
    typedef scoped_allocator_adaptor<
        std::allocator_traits<OuterAlloc>::template rebind_alloc<T>, 
        InnerAllocs...
    > other;
};

[編集] メンバ関数

新しいscoped_allocator_adaptorインスタンスを作成します
Original:
creates a new scoped_allocator_adaptor instance
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(パブリックメンバ関数) [edit]
scoped_allocator_adaptorインスタンスを破棄します
Original:
destructs a scoped_allocator_adaptor instance
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(パブリックメンバ関数) [edit]
inner_allocatorの参照を取得します
Original:
obtains an inner_allocator reference
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(パブリックメンバ関数) [edit]
outer_allocatorの参照を取得します
Original:
obtains an outer_allocator reference
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(パブリックメンバ関数) [edit]
外側のアロケータを使用して初期化されていないストレージが割り当てられます
Original:
allocates uninitialized storage using the outer allocator
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(パブリックメンバ関数) [edit]
外側のアロケータを使用してストレージを割り当てます
Original:
allocates storage using the outer allocator
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(パブリックメンバ関数) [edit]
returns the largest allocation size supported by the outer allocator
(パブリックメンバ関数) [edit]
適切な場合には、そのコンストラクタに内側のアロケータを渡して、割り当てられたストレージ内のオブジェクトを構築します
Original:
constructs an object in allocated storage, passing the inner allocator to its constructor if appropriate
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(パブリックメンバ関数) [edit]
割り振られたストレージ内のオブジェクトをdesrtucts
Original:
desrtucts an object in allocated storage
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(パブリックメンバ関数) [edit]
scoped_allocator_adaptorの状態とそのすべてのアロケータをコピーします
Original:
copies the state of scoped_allocator_adaptor and all its allocators
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(パブリックメンバ関数) [edit]

[編集] 非メンバ関数

2つの scoped_allocator_adaptor のインスタンスを比較します
(パブリックメンバ関数) [edit]

[編集] 参照

アロケータ型に関する情報を提供します
(クラステンプレート) [edit]
指定された型が uses-allocator 構築をサポートしているかどうか調べます
(クラステンプレート) [edit]
デフォルトのアロケータ
(クラステンプレート) [edit]