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