std::_Deque_iterator< _Tp, _Ref, _Ptr >(3) Library Functions Manual NAME std::_Deque_iterator< _Tp, _Ref, _Ptr > - A deque::iterator. SYNOPSIS #include Public Types typedef __ptr_rebind< _Ptr, _Tp > _Elt_pointer typedef __ptr_rebind< _Ptr, _Elt_pointer > _Map_pointer typedef _Deque_iterator _Self typedef __iter< const _Tp > const_iterator typedef ptrdiff_t difference_type typedef __iter< _Tp > iterator typedef std::random_access_iterator_tag iterator_category typedef _Ptr pointer typedef _Ref reference typedef size_t size_type typedef _Tp value_type Public Member Functions _Deque_iterator (_Elt_pointer __x, _Map_pointer __y) noexcept _Deque_iterator (const _Deque_iterator &__x) noexcept template, is_same<_Iter, iterator>>> _Deque_iterator (const _Iter &__x) noexcept iterator _M_const_cast () const noexcept void _M_set_node (_Map_pointer __new_node) noexcept reference operator* () const noexcept _Self & operator++ () noexcept _Self operator++ (int) noexcept _Self & operator+= (difference_type __n) noexcept _Self & operator-- () noexcept _Self operator-- (int) noexcept _Self & operator-= (difference_type __n) noexcept pointer operator-> () const noexcept _Deque_iterator & operator= (const _Deque_iterator &)=default reference operator[] (difference_type __n) const noexcept Static Public Member Functions static size_t _S_buffer_size () noexcept Public Attributes _Elt_pointer _M_cur _Elt_pointer _M_first _Elt_pointer _M_last _Map_pointer _M_node Friends template bool operator!= (const _Self &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept bool operator!= (const _Self &__x, const _Self &__y) noexcept _Self operator+ (const _Self &__x, difference_type __n) noexcept _Self operator+ (difference_type __n, const _Self &__x) noexcept template difference_type operator- (const _Self &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept difference_type operator- (const _Self &__x, const _Self &__y) noexcept _Self operator- (const _Self &__x, difference_type __n) noexcept template bool operator< (const _Self &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept bool operator< (const _Self &__x, const _Self &__y) noexcept template bool operator<= (const _Self &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept bool operator<= (const _Self &__x, const _Self &__y) noexcept template bool operator== (const _Self &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept bool operator== (const _Self &__x, const _Self &__y) noexcept template bool operator> (const _Self &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept bool operator> (const _Self &__x, const _Self &__y) noexcept template bool operator>= (const _Self &__x, const _Deque_iterator< _Tp, _RefR, _PtrR > &__y) noexcept bool operator>= (const _Self &__x, const _Self &__y) noexcept Detailed Description template struct std::_Deque_iterator< _Tp, _Ref, _Ptr >"A deque::iterator. Quite a bit of intelligence here. Much of the functionality of deque is actually passed off to this class. A deque holds two of these internally, marking its valid range. Access to elements is done as offsets of either of those two, relying on operator overloading in this class. All the functions are op overloads except for _M_set_node. Member Function Documentation template void std::_Deque_iterator< _Tp, _Ref, _Ptr >::_M_set_node (_Map_pointer __new_node) [inline], [noexcept] Prepares to traverse new_node. Sets everything except _M_cur, which should therefore be set by the caller immediately afterwards, based on _M_first and _M_last. References std::forward(). Author Generated automatically by Doxygen for libstdc++ from the source code. libstdc++ std::_Deque_iterator< _Tp, _Ref, _Ptr >(3)