move_backward
Moves the elements of one iterator to another. The move starts with the last element in a specified range, and ends with the first element in that range.
template<class BidirectionalIterator1, class BidirectionalIterator2>
BidirectionalIterator2 move_backward(
BidirectionalIterator1 _First,
BidirectionalIterator1 _Last,
BidirectionalIterator2 _DestEnd
);
Parameters
_First
An iterator that indicates the start of a range to move elements from._Last
An iterator that indicates the end of a range to move elements from. This element is not moved._DestEnd
A bidirectional iterator addressing the position of one past the final element in the destination range.
Property Value/Return Value
Returns an iterator that refers to the first element that is not moved.
Remarks
The template function evaluates *(_DestEnd - N - 1) = move(*(_Last - N - 1))) once for each N in the range [0, _Last - _First), for strictly increasing values of N starting with the lowest value. It then returns _DestEnd - (_Last - _First). If _DestEnd and _First designate regions of storage, _DestEnd must not be in the range [_First, _Last).
move and move_backward are functionally equivalent to using copy and copy_backward with a move iterator.
Requirements
Header: <algorithm>
Namespace: std