public member function
std::operator+
<iterator>
reverse_iterator operator+ (difference_type n) const;
Addition operator
Returns a
reverse iterator pointing to
n elements after the element the object points to.
A global overload for
operator+ with the same behavior also exists for the case where the
reverse_iterator is the right-hand side element of the sum:
1 2 3 4
|
template <class Iterator>
reverse_iterator<Iterator> operator+ (
typename reverse_iterator<Iterator>::difference_type n,
const reverse_iterator<Iterator>& x);
|
Parameters
- n
- Number of elements to offset.
difference_type is a member type defined as an alias of the base iterator's own difference type (generally, a integral type).
Return value
The reverse iterator itself (
*this).
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
// reverse_iterator::operator+ example
#include <iostream>
#include <iterator>
#include <vector>
using namespace std;
int main () {
vector<int> myvector;
for (int i=0; i<10; i++) myvector.push_back(i); // myvector: 0 1 2 3 4 5 6 7 8 9
typedef vector<int>::iterator iter_int;
reverse_iterator<iter_int> rev_iterator;
rev_iterator = myvector.rbegin() +3;
cout << "The fourth element from the end is : " << *rev_iterator << endl;
return 0;
}
|
Output:
The fourth element from the end is : 6
|
See also
- operator-
- Subtraction operator (public member function)
- operator++
- Increment iterator position (public member function)
- operator+=
- Advance iterator (public member function)