const_iterator Class
class QFuture::const_iteratorThe QFuture::const_iterator class provides an STL-style const iterator for QFuture. More...
This class was introduced in Qt 4.4.
Note: All functions in this class are reentrant.
Public Types
typedef | difference_type |
typedef | iterator_category |
typedef | pointer |
typedef | reference |
typedef | value_type |
Public Functions
const_iterator(const const_iterator &other) | |
const_iterator() | |
const_iterator & | operator=(const const_iterator &other) |
bool | operator!=(const const_iterator &other) const |
const T & | operator*() const |
const_iterator | operator+(int j) const |
const_iterator & | operator++() |
const_iterator | operator++(int) |
const_iterator & | operator+=(int j) |
const_iterator | operator-(int j) const |
const_iterator & | operator--() |
const_iterator | operator--(int) |
const_iterator & | operator-=(int j) |
const T * | operator->() const |
bool | operator==(const const_iterator &other) const |
Detailed Description
QFuture provides both STL-style iterators and Java-style iterators. The STL-style iterators are more low-level and more cumbersome to use; on the other hand, they are slightly faster and, for developers who already know STL, have the advantage of familiarity.
The default QFuture::const_iterator constructor creates an uninitialized iterator. You must initialize it using a QFuture function like QFuture::constBegin() or QFuture::constEnd() before you start iterating. Here's a typical loop that prints all the results available in a future:
QFuture<QString> future = ...; QFuture<QString>::const_iterator i; for (i = future.constBegin(); i != future.constEnd(); ++i) cout << *i << Qt::endl;
See also QFutureIterator and QFuture.
Member Type Documentation
typedef const_iterator::difference_type
Typedef for ptrdiff_t. Provided for STL compatibility.
typedef const_iterator::iterator_category
Typedef for std::bidirectional_iterator_tag. Provided for STL compatibility.
typedef const_iterator::pointer
Typedef for const T *. Provided for STL compatibility.
typedef const_iterator::reference
Typedef for const T &. Provided for STL compatibility.
typedef const_iterator::value_type
Typedef for T. Provided for STL compatibility.
Member Function Documentation
const_iterator::const_iterator(const const_iterator &other)
Constructs a copy of other.
const_iterator::const_iterator()
Constructs an uninitialized iterator.
Functions like operator*() and operator++() should not be called on an uninitialized iterartor. Use operator=() to assign a value to it before using it.
See also QFuture::constBegin() and QFuture::constEnd().
const_iterator &const_iterator::operator=(const const_iterator &other)
Assigns other to this iterator.
bool const_iterator::operator!=(const const_iterator &other) const
Returns true
if other points to a different result than this iterator; otherwise returns false
.
See also operator==().
const T &const_iterator::operator*() const
Returns the current result.
const_iterator const_iterator::operator+(int j) const
Returns an iterator to the results at j positions forward from this iterator. (If j is negative, the iterator goes backward.)
See also operator-() and operator+=().
const_iterator &const_iterator::operator++()
The prefix ++ operator (++it
) advances the iterator to the next result in the future and returns an iterator to the new current result.
Calling this function on QFuture<T>::constEnd() leads to undefined results.
See also operator--().
const_iterator const_iterator::operator++(int)
This is an overloaded function.
The postfix ++ operator (it++
) advances the iterator to the next result in the future and returns an iterator to the previously current result.
const_iterator &const_iterator::operator+=(int j)
Advances the iterator by j results. (If j is negative, the iterator goes backward.)
See also operator-=() and operator+().
const_iterator const_iterator::operator-(int j) const
Returns an iterator to the result at j positions backward from this iterator. (If j is negative, the iterator goes forward.)
See also operator+() and operator-=().
const_iterator &const_iterator::operator--()
The prefix -- operator (--it
) makes the preceding result current and returns an iterator to the new current result.
Calling this function on QFuture<T>::constBegin() leads to undefined results.
See also operator++().
const_iterator const_iterator::operator--(int)
This is an overloaded function.
The postfix -- operator (it--
) makes the preceding result current and returns an iterator to the previously current result.
const_iterator &const_iterator::operator-=(int j)
Makes the iterator go back by j results. (If j is negative, the iterator goes forward.)
See also operator+=() and operator-().
const T *const_iterator::operator->() const
Returns a pointer to the current result.
bool const_iterator::operator==(const const_iterator &other) const
Returns true
if other points to the same result as this iterator; otherwise returns false
.
See also operator!=().