Daily bit(e) of C++ | std::reverse_iterator
Daily bit(e) of C++ #279, Iterator adapter for reverse iteration on bidirectional ranges: std::reverse_iterator.
std::reverse_iterator is an iterator adapter that adapts (at least bidirectional) iterators for reverse iteration.
Note that to correctly model begin() and end(), the pointed-to element is offset by one.
begin(), which points to the first element, maps to rend(), which points one before
end(), which points to one after maps to rbegin(), which points to the last element