Standard C++ Library Reference ISO/IEC (VERSION3)

The first (preincrement) operator increments the stored output iterator object, then returns
*this.
The second (postincrement) operator makes a copy of *this, increments the stored output
iterator object, then returns the copy.
raw_storage_iterator::raw_storage_iterator
explicit raw_storage_iterator(FwdIt first);
The constructor stores first as the output iterator object.
return_temporary_buffer
template<class Ty>
void return_temporary_buffer(Ty *pbuf);
The template function frees the storage designated by pbuf, which must be earlier allocated by
a call to get_temporary_buffer.
uninitialized_copy
template<class InIt, class FwdIt>
FwdIt uninitialized_copy(InIt first, InIt last,
FwdIt dest);
The template function effectively executes:
while (first != last)
new ((void *)&*dest++)
iterator_traits<InIt>::value_type(*first++);
return first;
unless the code throws an exception. In that case, all constructed objects are destroyed and the
exception is rethrown.
uninitialized_fill
template<class FwdIt, class Ty>
void uninitialized_fill(FwdIt first, FwdIt last,
const Ty& val);
The template function effectively executes:
while (first != last)
new ((void *)&*first++)
iterator_traits<FwdIt>::value_type(val);