CopperSpice API  1.7.2
QList< T >::iterator< T > Class Template Reference

The QList::iterator class provides an STL style iterator for QList and QQueue. More...

Public Typedefs

using iterator_category = std::random_access_iterator_tag
 

Public Methods

 iterator ()
 
 iterator (const iterator &other)
 
 iterator (iterator &&other)
 
bool operator!= (const_iterator other) const
 
T & operator* () const
 
iterator operator+ (size_type n) const
 
iteratoroperator++ ()
 
iterator operator++ (int)
 
iteratoroperator+= (size_type n)
 
int operator- (iterator other) const
 
iterator operator- (size_type n) const
 
iteratoroperator-- ()
 
iterator operator-- (int)
 
iteratoroperator-= (size_type n)
 
T * operator-> () const
 
bool operator< (const const_iterator &other) const
 
bool operator< (const iterator &other) const
 
bool operator<= (const const_iterator &other) const
 
bool operator<= (const iterator &other) const
 
iteratoroperator= (const iterator &other)
 
iteratoroperator= (iterator &&other)
 
bool operator== (const_iterator other) const
 
bool operator> (const const_iterator &other) const
 
bool operator> (const iterator &other) const
 
bool operator>= (const const_iterator &other) const
 
bool operator>= (const iterator &other) const
 
T & operator[] (size_type n) const
 

Detailed Description

template<typename T>
template<typename T>
class QList< T >::iterator< T >

The QList::iterator class provides an STL style iterator for QList and QQueue.

See also
QList::begin(), QList::end(), QList::const_iterator

Member Typedef Documentation

template<typename T >
template<typename T >
QList< T >::iterator< T >::iterator_category

A synonym for std::random_access_iterator_tag indicating this iterator is a random access iterator.

Constructor & Destructor Documentation

template<typename T >
template<typename T >
QList< T >::iterator< T >::iterator ( )

Constructs an uninitialized iterator.

Functions like operator*() and operator++() should not be called on an uninitialized iterator. Use operator=() to assign a value to it before using it.

See also
QList::begin(), QList::end()
template<typename T >
template<typename T >
QList< T >::iterator< T >::iterator ( const iterator< T > &  other)

Constructs a copy of other.

template<typename T >
template<typename T >
QList< T >::iterator< T >::iterator ( iterator< T > &&  other)

Move constructs a new QList::iterator from other.

Method Documentation

template<typename T >
template<typename T >
bool QList< T >::iterator< T >::operator!= ( const_iterator< T >  other) const

Returns true if other points to a different item than this iterator, otherwise returns false.

See also
operator==()
template<typename T >
template<typename T >
T & QList< T >::iterator< T >::operator* ( ) const

Returns a reference to the current item. The following example shows how to change the value of an item by using operator*() on the left side of an assignment.

if (*it == "Hello") {
*it = "Bonjour";
}
See also
operator->()
template<typename T >
template<typename T >
iterator QList< T >::iterator< T >::operator+ ( size_type  n) const

Returns an iterator to the item at n positions forward from this iterator. If n is negative the iterator goes backward.

See also
operator-(), operator+=()
template<typename T >
template<typename T >
iterator & QList< T >::iterator< T >::operator++ ( )

The prefix ++ operator (++it) advances the iterator to the next item in the list and returns an iterator to the new current item.

Calling this function on QList::end() leads to undefined behavior.

See also
operator--()
template<typename T >
template<typename T >
iterator QList< T >::iterator< T >::operator++ ( int  )

The postfix ++ operator (it++) advances the iterator to the next item in the list and returns an iterator to the previously current item.

template<typename T >
template<typename T >
iterator & QList< T >::iterator< T >::operator+= ( size_type  n)

Advances the iterator by n items. If n is negative the iterator goes backward.

See also
operator-=(), operator+()
template<typename T >
template<typename T >
int QList< T >::iterator< T >::operator- ( iterator< T >  other) const

Returns the number of items between the item pointed to by other and the item pointed to by this iterator.

template<typename T >
template<typename T >
iterator QList< T >::iterator< T >::operator- ( size_type  n) const

Returns an iterator to the item at n positions backward from this iterator. If n is negative the iterator goes forward.

See also
operator+(), operator-=()
template<typename T >
template<typename T >
iterator & QList< T >::iterator< T >::operator-- ( )

The prefix – operator (–it) makes the preceding item current and returns an iterator to the new current item.

Calling this function on QList::begin() leads to undefined behavior.

See also
operator++()
template<typename T >
template<typename T >
iterator QList< T >::iterator< T >::operator-- ( int  )

The postfix – operator (it–) makes the preceding item current and returns an iterator to the previously current item.

template<typename T >
template<typename T >
iterator & QList< T >::iterator< T >::operator-= ( size_type  n)

Makes the iterator go back by n items. If n is negative the iterator goes forward.

See also
operator+=(), operator-()
template<typename T >
template<typename T >
T * QList< T >::iterator< T >::operator-> ( ) const

Returns a pointer to the current item.

See also
operator*()
template<typename T >
template<typename T >
bool QList< T >::iterator< T >::operator< ( const const_iterator< T > &  other) const

Returns true if the item pointed to by this iterator is less than the item pointed to by the other iterator.

template<typename T >
template<typename T >
bool QList< T >::iterator< T >::operator< ( const iterator< T > &  other) const

Returns true if the item pointed to by this iterator is less than the item pointed to by the other iterator.

template<typename T >
template<typename T >
bool QList< T >::iterator< T >::operator<= ( const const_iterator< T > &  other) const

Returns true if the item pointed to by this iterator is less than or equal to the item pointed to by the other iterator.

template<typename T >
template<typename T >
bool QList< T >::iterator< T >::operator<= ( const iterator< T > &  other) const

Returns true if the item pointed to by this iterator is less than or equal to the item pointed to by the other iterator.

template<typename T >
template<typename T >
iterator & QList< T >::iterator< T >::operator= ( const iterator< T > &  other)

Copy assigns from other and returns a reference to this object.

template<typename T >
template<typename T >
iterator & QList< T >::iterator< T >::operator= ( iterator< T > &&  other)

Move assigns from other and returns a reference to this object.

template<typename T >
template<typename T >
bool QList< T >::iterator< T >::operator== ( const_iterator< T >  other) const

Returns true if other points to the same item as this iterator, otherwise returns false.

See also
operator!=()
template<typename T >
template<typename T >
bool QList< T >::iterator< T >::operator> ( const const_iterator< T > &  other) const

Returns true if the item pointed to by this iterator is greater than the item pointed to by the other iterator.

template<typename T >
template<typename T >
bool QList< T >::iterator< T >::operator> ( const iterator< T > &  other) const

Returns true if the item pointed to by this iterator is greater than the item pointed to by the other iterator.

template<typename T >
template<typename T >
bool QList< T >::iterator< T >::operator>= ( const const_iterator< T > &  other) const

Returns true if the item pointed to by this iterator is greater than or equal to the item pointed to by the other iterator.

template<typename T >
template<typename T >
bool QList< T >::iterator< T >::operator>= ( const iterator< T > &  other) const

Returns true if the item pointed to by this iterator is greater than or equal to the item pointed to by the other iterator.

template<typename T >
template<typename T >
T & QList< T >::iterator< T >::operator[] ( size_type  n) const

Returns a reference to the item at position *this + n.

See also
operator+()