|  | Home · All Classes · Main Classes · Grouped Classes · Modules · Functions |

# Q3IntCacheIterator Class Reference
[Qt3Support module]

The Q3IntCacheIterator class provides an iterator for Q3IntCache collections. More...

     #include <Q3IntCacheIterator>

This class is part of the Qt 3 support library. It is provided to keep old source code working. We strongly advise against using it in new code. See Porting to Qt 4 for more information.

- List of all members, including inherited members

### Public Functions

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

## Detailed Description

The Q3IntCacheIterator class provides an iterator for Q3IntCache 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 Q3IntCache. Q3IntCache updates all iterators that refer an item when that item is removed.

Q3IntCacheIterator 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 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 least recently used list.

See also Q3IntCache.

## Member Function Documentation

### Q3IntCacheIterator::Q3IntCacheIterator ( const Q3IntCache<type> & cache )

Constructs an iterator for cache. The current iterator item is set to point to 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).

### Q3IntCacheIterator::Q3IntCacheIterator ( const Q3IntCacheIterator<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.

### bool Q3IntCacheIterator::atFirst () const

Returns TRUE if the iterator points to the first item in the cache; otherwise returns FALSE. Note that this refers to the iterator's arbitrary ordering, not to the cache's internal least recently used list.

See also toFirst() and atLast().

### bool Q3IntCacheIterator::atLast () const

Returns TRUE if the iterator points to the last item in the cache; otherwise returns FALSE. Note that this refers to the iterator's arbitrary ordering, not to the cache's internal least recently used list.

See also toLast() and atFirst().

### uint Q3IntCacheIterator::count () const

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

See also isEmpty().

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

Returns a pointer to the current iterator item.

### long Q3IntCacheIterator::currentKey () const

Returns the key for the current iterator item.

### bool Q3IntCacheIterator::isEmpty () const

Returns TRUE if the cache is empty; otherwise returns FALSE.

See also count().

### type * Q3IntCacheIterator::toFirst ()

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

Sets the iterator to 0, and returns 0, if the cache is empty.

See also toLast() and isEmpty().

### type * Q3IntCacheIterator::toLast ()

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

Sets the iterator to 0, and returns 0, if the cache is empty.

See also toFirst() and isEmpty().

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

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

### type * Q3IntCacheIterator::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 0, 0 is returned.

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

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

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

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

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

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

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

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

### Q3IntCacheIterator<type> & Q3IntCacheIterator::operator= ( const Q3IntCacheIterator<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.