std::reverse_iterator(3)

NAME

std::reverse_iterator

SYNOPSIS

Inherits std::iterator< std::iterator_traits< _Iterator
>::iterator_category, std::iterator_traits< _Iterator >::value_type,
std::iterator_traits< _Iterator >::iterator_traits< _Iterator
>::difference_type, std::iterator_traits< _Iterator >::iterator_traits<
_Iterator >::pointer, std::iterator_traits< _Iterator
>::iterator_traits< _Iterator >::reference >.

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 95 of file stl_iterator.h.
Public Types
typedef iterator_traits< _Iterator >::difference_type difference_type typedef _Category iterator_category
typedef _Iterator iterator_type
typedef iterator_traits< _Iterator >::pointer pointer typedef iterator_traits< _Iterator >::reference reference typedef _Tp value_type
Public Member Functions
iterator_type base () const
reference operator* () const
reverse_iterator operator+ (difference_type __n) const reverse_iterator operator++ (int) reverse_iterator & operator++ () reverse_iterator & operator+= (difference_type __n) reverse_iterator operator- (difference_type __n) const reverse_iterator operator-- (int) reverse_iterator & operator-- () reverse_iterator & operator-= (difference_type __n) pointer operator-> () const
reference operator[] (difference_type __n) const template<typename _Iter> reverse_iterator (const reverse_iterator<
_Iter > &__x)
reverse_iterator (const reverse_iterator &__x) reverse_iterator (iterator_type __x)
reverse_iterator ()
Protected Attributes
_Iterator current

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< _Category, _Tp, _Distance, _Pointer, _Reference >.
Definition at line 108 of file stl_iterator.h.
template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t,
typename _Pointer = _Tp*, typename _Reference = _Tp&> typedef _Category std::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >::iterator_category [inherited] One of the tag types.
Definition at line 113 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< _Category, _Tp, _Distance, _Pointer, _Reference >.
Definition at line 110 of file stl_iterator.h.
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< _Category, _Tp, _Distance, _Pointer, _Reference >.
Definition at line 109 of file stl_iterator.h.
template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t,
typename _Pointer = _Tp*, typename _Reference = _Tp&> typedef _Tp std::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >::value_type [inherited] The type 'pointed to' by the iterator.
Definition at line 115 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 119 of file stl_iterator.h.
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 125 of file stl_iterator.h.
template<typename _Iterator> std::reverse_iterator< _Iterator
>::reverse_iterator (const reverse_iterator< _Iterator > & __x) [inline]
The copy constructor is normal.
Definition at line 130 of file stl_iterator.h.
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 138 of file stl_iterator.h.

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 145 of file stl_iterator.h.
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 doc/doxygen/TODO and
http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 154 of file stl_iterator.h.
template<typename _Iterator> reverse_iterator std::reverse_iterator<
_Iterator >::operator+ (difference_type __n) const [inline] Returns:
TODO
Todo
Doc me! See doc/doxygen/TODO and
http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 225 of file stl_iterator.h.
template<typename _Iterator> reverse_iterator std::reverse_iterator<
_Iterator >::operator++ (int) [inline] Returns:
TODO
Todo
Doc me! See doc/doxygen/TODO and
http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 187 of file stl_iterator.h.
template<typename _Iterator> reverse_iterator& std::reverse_iterator<
_Iterator >::operator++ () [inline] Returns:
TODO
Todo
Doc me! See doc/doxygen/TODO and
http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 175 of file stl_iterator.h.
template<typename _Iterator> reverse_iterator& std::reverse_iterator<
_Iterator >::operator+= (difference_type __n) [inline] Returns:
TODO
Todo
Doc me! See doc/doxygen/TODO and
http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 234 of file stl_iterator.h.
template<typename _Iterator> reverse_iterator std::reverse_iterator<
_Iterator >::operator- (difference_type __n) const [inline] Returns:
TODO
Todo
Doc me! See doc/doxygen/TODO and
http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 246 of file stl_iterator.h.
template<typename _Iterator> reverse_iterator std::reverse_iterator<
_Iterator >::operator-- (int) [inline] Returns:
TODO
Todo
Doc me! See doc/doxygen/TODO and
http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 212 of file stl_iterator.h.
template<typename _Iterator> reverse_iterator& std::reverse_iterator<
_Iterator >::operator-- () [inline] Returns:
TODO
Todo
Doc me! See doc/doxygen/TODO and
http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 200 of file stl_iterator.h.
template<typename _Iterator> reverse_iterator& std::reverse_iterator<
_Iterator >::operator-= (difference_type __n) [inline] Returns:
TODO
Todo
Doc me! See doc/doxygen/TODO and
http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 255 of file stl_iterator.h.
template<typename _Iterator> pointer std::reverse_iterator< _Iterator
>::operator-> () const [inline] Returns:
TODO
Todo
Doc me! See doc/doxygen/TODO and
http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 166 of file stl_iterator.h.
template<typename _Iterator> reference std::reverse_iterator< _Iterator
>::operator[] (difference_type __n) const [inline] Returns:
TODO
Todo
Doc me! See doc/doxygen/TODO and
http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.
Definition at line 267 of file stl_iterator.h.

Author

Generated automatically by Doxygen for libstdc++ from the source code.
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout