名前空間
変種
操作

名前付き要件: CopyInsertable

提供: cppreference.com
< cpp‎ | named req
 
 
名前付き要件
基本
レイアウト
ライブラリ全体
コンテナ
コンテナの要素
CopyInsertable
(C++11)
イテレータ
ストリーム入出力
乱数
並行処理
(C++11)

(C++11)
(C++11)
その他
 

その型のインスタンスが与えられたアロケータによってその場でコピー構築可能であることを指定します。

[編集] 要件

以下の内容を満たす場合、型 TT と同一の value_type を持つコンテナ XCopyInsertable です。

TXMoveInsertable であり、さらに

A アロケータの型
m A 型の左辺値
p コンテナによって準備された T* 型のポインタ
v T 型の式 (const かもしれません)

が与えられたとき、以下の式が well-formed でなければなりません。 ただし X::allocator_typestd::allocator_traits<A>::rebind_alloc<T> と同一です。

std::allocator_traits<A>::construct(m, p, v);

また、評価の後、 *p の値は v の値と同等です。 v の値は変更されません。

この項は、 X がアロケータ対応でない場合、アロケータオブジェクトを作成する必要がないことと std::allocator のユーザ定義の特殊化が実体化されないことを除いて、 Astd::allocator<T> であるかのように定義されます。

[編集] ノート

Astd::allocator<T> の場合、これは ::new((void*)p) T(v) によって行われたかのように配置 new を呼びます。