uninitialized_copy_n
入力反復子から、指定した数の要素のコピーを作成します。 コピーは前方反復子に格納されます。
template<class InputIterator, class Size, class ForwardIterator>
ForwardIterator uninitialized_copy_n(
InputIterator _First,
Size _Count,
ForwardIterator _Dest
);
パラメーター
_First
コピーするオブジェクトを参照する入力反復子。_Count
オブジェクトをコピーする回数を指定する符号付きまたは符号なし整数型。_Dest
新しいコピー先を参照する前方反復子。
戻り値
ターゲットを超えた最初の位置を示す前方反復子。 ソース範囲が空であった場合、反復子は _First を指します。
解説
このテンプレート関数は、実質的に次の内容を実行します。
for (; 0 < count; -- count)
new ((void *)&*_Dest++)
iterator_traits<InputIterator>::value_type(*_First++);
return dest;
ただし、このコードが例外をスローする場合を除きます。 この場合は、構築されたオブジェクトはすべて破棄され、再度例外がスローされます。
必要条件
ヘッダー: <memory>
名前空間: std