From Cppreference
|
|
|
|
|
template< class InputIterator, class ForwardIterator >
ForwardIterator uninitialized_copy( InputIterator first,
InputIterator last,
ForwardIterator d_first );
|
|
|
|
|
Copies elements from the range [first, last) to an uninitialized memory area beginning at d_first. The elements in the uninitialized area are constructed using copy constructor.
[edit] Parameters
first, last
|
-
|
the range of the elements to copy
|
d_first
|
-
|
the beginning of the destination range
|
[edit] Return value
iterator to the element past the last element copied.
[edit] Complexity
linear in the distance between first and last
[edit] Equivalent function
template<class InputIterator, class ForwardIterator>
ForwardIterator uninitialized_copy(InputIterator first,
InputIterator last,
ForwardIterator d_first)
{
typedef typename std::iterator_traits<ForwardIterator>::value_type Value;
for (; first != last; ++first, ++d_first) {
::new (static_cast<void*>(&*d_first)) Value(*first);
}
return d_first;
}
|
[edit] Example
[edit] See also
|
|
copies a number of objects to an uninitialized area of memory (function template)
|