Standard C++ Library Class Reference
This mapping is dictated by the fact that, while there is always a pointer past the end of a container, there might not be a
valid pointer before its beginning.
The following are true for reverse_bidirectional_iterators :
These iterators may be instantiated with the default constructor or by a single argument constructor that initializes
the new reverse_bidirectional_iterator with a bidirectional_iterator.
● 
operator* returns a reference to the current value pointed to.● 
operator++ advances the iterator to the previous item (--current) and returns a reference to *this.● 
operator++(int) advances the iterator to the previous item (--current) and returns the old value of *this.● 
operator-- advances the iterator to the following item (++current) and returns a reference to *this.● 
operator--(int) Advances the iterator to the following item (++current) and returns the old value of *this.● 
operator== This non-member operator returns true if the iterators x and y point to the same item.● 
The following are true for reverse_iterators:
These iterators may be instantiated with the default constructor or by a single argument constructor which
initializes the new reverse_iterator with a random_access_iterator.
● 
operator* returns a reference to the current value pointed to.● 
operator++ advances the iterator to the previous item (--current) and returns a reference to *this.● 
operator++(int) advances the iterator to the previous item (--current) and returns the old value of *this.● 
operator-- advances the iterator to the following item (++current) and returns a reference to *this.● 
operator--(int) advances the iterator to the following item (++current) and returns the old value of *this.● 
operator== is a non-member operator returns true if the iterators x and y point to the same item.● 
The remaining operators (<, +, - , +=, -=) are redefined to behave exactly as they would in a
random_access_iterator, except with the sense of direction reversed.
● 
Complexity
All iterator operations are required to take at most amortized constant time.
Interface
template <class BidirectionalIterator,
 class T,
 class Reference = T&,
 class Pointer = T*,
 class Distance = ptrdiff_t>
class reverse_bidirectional_iterator
 : public bidirectional_iterator<T, Distance> {
 typedef reverse_bidirectional_iterator<BidirectionalIterator, T, 
 Reference, 
 Pointer, Distance> self;
 friend bool operator== (const self&, const self&);
 public:
 reverse_bidirectional_iterator ();
 explicit reverse_bidirectional_iterator
 (BidirectionalIterator);
 BidirectionalIterator base ();










