libstdc++
std::move_iterator< _Iterator > Class Template Reference

Public Types

typedef iterator_traits
< _Iterator >::difference_type 
difference_type
 
typedef iterator_traits
< _Iterator >
::iterator_category 
iterator_category
 
typedef _Iterator iterator_type
 
typedef _Iterator pointer
 
typedef value_type && reference
 
typedef iterator_traits
< _Iterator >::value_type 
value_type
 

Public Member Functions

iterator_type base () const
 
 move_iterator (iterator_type __i)
 
template<typename _Iter >
 move_iterator (const move_iterator< _Iter > &__i)
 
reference operator* () const
 
move_iterator operator+ (difference_type __n) const
 
move_iteratoroperator++ ()
 
move_iterator operator++ (int)
 
move_iteratoroperator+= (difference_type __n)
 
move_iterator operator- (difference_type __n) const
 
move_iteratoroperator-- ()
 
move_iterator operator-- (int)
 
move_iteratoroperator-= (difference_type __n)
 
pointer operator-> () const
 
reference operator[] (difference_type __n) const
 

Protected Attributes

_Iterator _M_current
 

Detailed Description

template<typename _Iterator>
class std::move_iterator< _Iterator >

Class template move_iterator is an iterator adapter with the same behavior as the underlying iterator except that its dereference operator implicitly converts the value returned by the underlying iterator's dereference operator to an rvalue reference. Some generic algorithms can be called with move iterators to replace copying with moving.

Definition at line 407 of file cpp_type_traits.h.


The documentation for this class was generated from the following files: