man std::reverse_iterator (Fonctions bibliothèques) -
NAME
std::reverse_iterator -
SYNOPSIS
#include <iterator>
Inherits std::iterator< iterator_traits< Iterator >::iterator_category, iterator_traits< Iterator >::value_type, iterator_traits< Iterator >::difference_type, iterator_traits< Iterator >::pointer, iterator_traits< Iterator >::reference >.
Public Types
typedef Iterator iterator_type
typedef iterator_traits< Iterator >::difference_type difference_type
Distance between iterators is represented as this type.
typedef iterator_traits< Iterator >::reference reference
This type represents a reference-to-value_type.
typedef iterator_traits< Iterator >::pointer pointer
This type represents a pointer-to-value_type.
typedef iterator_traits< Iterator >::iterator_category iterator_category
One of the tag types.
typedef iterator_traits< Iterator >::value_type value_type
The type 'pointed to' by the iterator.
Public Member Functions
reverse_iterator ()
reverse_iterator (iterator_type x)
reverse_iterator (const reverse_iterator &x)
template<typename Iter> reverse_iterator (const reverse_iterator< Iter > &x)
iterator_type base () const
reference operator * () const
pointer operator-> () const
reverse_iterator & operator++ ()
reverse_iterator operator++ (int)
reverse_iterator & operator-- ()
reverse_iterator operator-- (int)
reverse_iterator operator+ (difference_type n) const
reverse_iterator & operator+= (difference_type n)
reverse_iterator operator- (difference_type n) const
reverse_iterator & operator-= (difference_type n)
reference operator[] (difference_type n) const
Protected Attributes
Iterator current
Detailed Description
template<typename Iterator> class std::reverse_iterator< Iterator >
&*(reverse_iterator(i)) == &*(i - 1)
This mapping is dictated by the fact that while there is always a pointer past the end of an array, there might not be a valid pointer before the beginning of an array.' [24.4.1]/1,2
Reverse iterators can be tricky and surprising at first. Their semantics make sense, however, and the trickiness is a side effect of the requirement that the iterators must be safe.
Definition at line 90 of file iterator.
Member Typedef Documentation
template<typename Iterator> typedef iterator_traits<Iterator>::difference_type std::reverse_iterator< Iterator >::difference_type
Distance between iterators is represented as this type.
Reimplemented from std::iterator< iterator_traits< Iterator >::iterator_category, iterator_traits< Iterator >::value_type, iterator_traits< Iterator >::difference_type, iterator_traits< Iterator >::pointer, iterator_traits< Iterator >::reference >.
Definition at line 103 of file iterator.
typedef iterator_traits< Iterator >::iterator_category std::iterator< iterator_traits< Iterator >::iterator_category , iterator_traits< Iterator >::value_type , iterator_traits< Iterator >::difference_type , iterator_traits< Iterator >::pointer , iterator_traits< Iterator >::reference >::iterator_category [inherited]
One of the tag types.
Definition at line 109 of file stl_iterator_base_types.h.
template<typename Iterator> typedef iterator_traits<Iterator>::pointer std::reverse_iterator< Iterator >::pointer
This type represents a pointer-to-value_type.
Reimplemented from std::iterator< iterator_traits< Iterator >::iterator_category, iterator_traits< Iterator >::value_type, iterator_traits< Iterator >::difference_type, iterator_traits< Iterator >::pointer, iterator_traits< Iterator >::reference >.
Definition at line 105 of file iterator.
template<typename Iterator> typedef iterator_traits<Iterator>::reference std::reverse_iterator< Iterator >::reference
This type represents a reference-to-value_type.
Reimplemented from std::iterator< iterator_traits< Iterator >::iterator_category, iterator_traits< Iterator >::value_type, iterator_traits< Iterator >::difference_type, iterator_traits< Iterator >::pointer, iterator_traits< Iterator >::reference >.
Definition at line 104 of file iterator.
typedef iterator_traits< Iterator >::value_type std::iterator< iterator_traits< Iterator >::iterator_category , iterator_traits< Iterator >::value_type , iterator_traits< Iterator >::difference_type , iterator_traits< Iterator >::pointer , iterator_traits< Iterator >::reference >::value_type [inherited]
The type 'pointed to' by the iterator.
Definition at line 111 of file stl_iterator_base_types.h.
Constructor & Destructor Documentation
template<typename Iterator> std::reverse_iterator< Iterator >::reverse_iterator () [inline]
The default constructor default-initializes member current. If it is a pointer, that means it is zero-initialized.
Definition at line 114 of file iterator.
Referenced by std::reverse_iterator< Iterator >::operator+(), and std::reverse_iterator< Iterator >::operator-().
template<typename Iterator> std::reverse_iterator< Iterator >::reverse_iterator (iterator_type x) [inline, explicit]
This iterator will move in the opposite direction that x does.
Definition at line 120 of file iterator.
template<typename Iterator> std::reverse_iterator< Iterator >::reverse_iterator (const reverse_iterator< Iterator > & x) [inline]
The copy constructor is normal.
Definition at line 125 of file iterator.
template<typename Iterator> template<typename Iter> std::reverse_iterator< Iterator >::reverse_iterator (const reverse_iterator< Iter > & x) [inline]
A reverse_iterator across other types can be copied in the normal fashion.
Definition at line 133 of file iterator.
Member Function Documentation
template<typename Iterator> iterator_type std::reverse_iterator< Iterator >::base () const [inline]
Returns: current, the iterator used for underlying work.
Definition at line 140 of file iterator.
References std::reverse_iterator< Iterator >::current.
Referenced by std::operator+(), std::operator-(), and std::operator==().
template<typename Iterator> reference std::reverse_iterator< Iterator >::operator * () const [inline]
Returns: TODO
Todo Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 149 of file iterator.
References std::reverse_iterator< Iterator >::current.
Referenced by std::reverse_iterator< Iterator >::operator->().
template<typename Iterator> reverse_iterator std::reverse_iterator< Iterator >::operator+ (difference_type n) const [inline]
Returns: TODO
Todo Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 219 of file iterator.
References std::reverse_iterator< Iterator >::current, and std::reverse_iterator< Iterator >::reverse_iterator().
template<typename Iterator> reverse_iterator std::reverse_iterator< Iterator >::operator++ (int) [inline]
Returns: TODO
Todo Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 182 of file iterator.
References std::reverse_iterator< Iterator >::current.
template<typename Iterator> reverse_iterator& std::reverse_iterator< Iterator >::operator++ () [inline]
Returns: TODO
Todo Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 170 of file iterator.
References std::reverse_iterator< Iterator >::current.
template<typename Iterator> reverse_iterator& std::reverse_iterator< Iterator >::operator+= (difference_type n) [inline]
Returns: TODO
Todo Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 228 of file iterator.
References std::reverse_iterator< Iterator >::current.
template<typename Iterator> reverse_iterator std::reverse_iterator< Iterator >::operator- (difference_type n) const [inline]
Returns: TODO
Todo Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 240 of file iterator.
References std::reverse_iterator< Iterator >::current, and std::reverse_iterator< Iterator >::reverse_iterator().
template<typename Iterator> reverse_iterator std::reverse_iterator< Iterator >::operator-- (int) [inline]
Returns: TODO
Todo Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 206 of file iterator.
References std::reverse_iterator< Iterator >::current.
template<typename Iterator> reverse_iterator& std::reverse_iterator< Iterator >::operator-- () [inline]
Returns: TODO
Todo Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 195 of file iterator.
References std::reverse_iterator< Iterator >::current.
template<typename Iterator> reverse_iterator& std::reverse_iterator< Iterator >::operator-= (difference_type n) [inline]
Returns: TODO
Todo Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 249 of file iterator.
References std::reverse_iterator< Iterator >::current.
template<typename Iterator> pointer std::reverse_iterator< Iterator >::operator-> () const [inline]
Returns: TODO
Todo Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 161 of file iterator.
References std::reverse_iterator< Iterator >::operator *().
template<typename Iterator> reference std::reverse_iterator< Iterator >::operator[] (difference_type n) const [inline]
Returns: TODO
Todo Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 261 of file iterator.
Author
Generated automatically by Doxygen for libstdc++-v3 Source from the source code.