public member function
<list>
std::list::rend
reverse_iterator rend();
const_reverse_iterator rend() const;
reverse_iterator rend() nothrow;
const_reverse_iterator rend() const nothrow;
Return reverse iterator to reverse end
Returns a reverse iterator pointing to the theoretical element preceding the first element in the list container (which is considered its reverse end).
The range between list::rbegin and list::rend contains all the elements of the container (in reverse order).
Return Value
A reverse iterator to the reverse end of the sequence container.
If the list object is const-qualified, the function returns a const_reverse_iterator. Otherwise, it returns a reverse_iterator.
Member types reverse_iterator and const_reverse_iterator are reverse bidirectional iterator types (pointing to an element and to a const element, respectively). See list member types.
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
// list::rbegin/rend
#include <iostream>
#include <list>
int main ()
{
std::list<int> mylist;
for (int i=1; i<=5; ++i) mylist.push_back(i);
std::cout << "mylist backwards:";
for (std::list<int>::reverse_iterator rit=mylist.rbegin(); rit!=mylist.rend(); ++rit)
std::cout << ' ' << *rit;
std::cout << '\n';
return 0;
}
| |
Output:
mylist backwards: 5 4 3 2 1
|
Iterator validity
No changes.
Data races
The container is accessed (neither the const nor the non-const versions modify the container).
No contained elements are accessed by the call, but the iterator returned can be used to access or modify elements. Concurrently accessing or modifying different elements is safe.
Exception safety
No-throw guarantee: this member function never throws exceptions.
The copy construction or assignment of the returned iterator is also guaranteed to never throw.
See also
- list::rbegin
- Return reverse iterator to reverse beginning (public member function
)
- list::begin
- Return iterator to beginning (public member function
)
- list::end
- Return iterator to end (public member function
)