# QIntCacheIterator Class Reference

The QIntCacheIterator class provides an iterator for QIntCache collections. More...

`#include <qcache.h>`

Inherits QGCacheIterator.

List of all member functions.

## Public Members

- QIntCacheIterator ( const QIntCache<type> & cache )
- QIntCacheIterator ( const QIntCacheIterator<type> & ci )
- QIntCacheIterator<type>& operator= ( const QIntCacheIterator<type> & ci )
- uint count () const
- bool isEmpty () const
- bool atFirst () const
- bool atLast () const
- type* toFirst ()
- type* toLast ()
- operator type* ()const
- type* current () const
- long currentKey () const
- type* operator ()
- type* operator++ ()
- type* operator+= ( uint jump )
- type* operator-- ()
- type* operator-= ( uint jump )

## Detailed Description

The QIntCacheIterator class provides an iterator for QIntCache collections.

Note that the traversal order is arbitrary, you are not guaranteed any particular order. If new objects are inserted into the cache while the iterator is active, the iterator may or may not see them.

Multiple iterators are completely independent, even when they operate on the same QIntCache. QIntCache updates all iterators that refer an item when that itam is removed.

QIntCacheIterator provides an operator++(), and an operator+=() to traverse the cache, current() and currentKey() to access the current cache item and its key, atFirst() atLast() which return TRUE if the iterator points to the first/last item in the cache, isEmpty() which returns TRUE if the cache is empty and finally count() which returns the number of items in the cache.

Note that atFirst() and atLast() refer to the iterator's arbitrary ordering, not to the cache's internal LRU list.

See also: QIntCache.

## Member Function Documentation

### QIntCacheIterator::QIntCacheIterator ( const QIntCache<type> & cache )

Constructs an iterator for cache. The current iterator item is set to point on the first item in the cache (or rather, the first item is defined to be the item at which this constructor sets the iterator to point).

### QIntCacheIterator::QIntCacheIterator ( const QIntCacheIterator<type> & ci )

Constructs an iterator for the same cache as ci. The new iterator starts at the same item as ci.current(), but moves independently from there on.

### QIntCacheIterator::operator type * () const

Cast operator. Returns a pointer to the current iterator item. Same as current().

### uint QIntCacheIterator::count () const

Returns the number of items in the cache on which this iterator operates.

See also: isEmpty().

### type * QIntCacheIterator::current () const

Returns a pointer to the current iterator item.

### long QIntCacheIterator::currentKey () const

Returns the key for the current iterator item.

### bool QIntCacheIterator::isEmpty () const

Returns TRUE if the cache is empty, i.e. count() == 0, otherwise FALSE.

See also: count().

### type * QIntCacheIterator::operator() ()

Makes the succeeding item current and returns the original current item.

If the current iterator item was the last item in the cache or if it was null, null is returned.

### type * QIntCacheIterator::operator++ ()

Prefix ++ makes the iterator point to the item just after current(), and makes that the new current item for the iterator. If current() was the last item, operator--() returns 0.

### type * QIntCacheIterator::operator+= ( uint jump )

Returns the item jump positions after the current item, or null if it is beyond the last item. Makes this the current item.

### type * QIntCacheIterator::operator-- ()

Prefix -- makes the iterator point to the item just before current(), and makes that the new current item for the iterator. If current() was the first item, operator--() returns 0.

### type * QIntCacheIterator::operator-= ( uint jump )

Returns the item jump positions before the current item, or null if it is beyond the first item. Makes this the current item.

### QIntCacheIterator<type>& QIntCacheIterator::operator= ( const QIntCacheIterator<type> & ci )

Makes this an iterator for the same cache as ci. The new iterator starts at the same item as ci.current(), but moves independently thereafter.

### type * QIntCacheIterator::toFirst ()

Sets the iterator to point to the first item in the cache and returns a pointer to the item.

Sets the iterator to null and returns null if if the cache is empty.

See also: toLast() and isEmpty().

### type * QIntCacheIterator::toLast ()

Sets the iterator to point to the last item in the cache and returns a pointer to the item.

Sets the iterator to null and returns null if if the cache is empty.

See also: toLast() and isEmpty().

Search the documentation, FAQ, qt-interest archive and more (uses www.troll.no):

This file is part of the Qt toolkit, copyright © 1995-99 Troll Tech, all rights reserved.

It was generated from the following files:

- qcache.h: 1998/08/27
- qcache.doc: 1998/07/03