Q3CacheIterator Class

The Q3CacheIterator class provides an iterator for Q3Cache collections. 更多...

头: #include <Q3CacheIterator>

公共函数

Q3CacheIterator (const Q3Cache<type> & cache )
Q3CacheIterator (const Q3CacheIterator<type> & ci )
bool atFirst () const
bool atLast () const
uint count () const
type * current () const
QString 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 )
Q3CacheIterator<type> & operator= (const Q3CacheIterator<type> & ci )

详细描述

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

Q3CacheIterator provides an operator++(), and an operator+=() to traverse the cache. The current () 和 currentKey () functions are used to access the current cache item and its key. The atFirst () 和 atLast () return TRUE if the iterator points to the first or last item in the cache respectively. The isEmpty () function returns TRUE if the cache is empty, and count () returns the number of items in the cache.

注意, atFirst () 和 atLast () refer to the iterator's arbitrary ordering, not to the cache's internal least recently used list.

另请参阅 Q3Cache .

成员函数文档编制

Q3CacheIterator:: Q3CacheIterator (const Q3Cache < type > & cache )

Constructs an iterator for cache . The current iterator item is set to point to the first item in the cache .

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

另请参阅 toFirst () 和 atLast ().

bool Q3CacheIterator:: 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.

另请参阅 toLast () 和 atFirst ().

uint Q3CacheIterator:: count () const

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

另请参阅 isEmpty ().

type * Q3CacheIterator:: current () const

Returns a pointer to the current iterator item.

QString Q3CacheIterator:: currentKey () const

Returns the key for the current iterator item.

bool Q3CacheIterator:: isEmpty () const

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

另请参阅 count ().

type * Q3CacheIterator:: 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.

另请参阅 toLast () 和 isEmpty ().

type * Q3CacheIterator:: 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.

另请参阅 toFirst () 和 isEmpty ().

Q3CacheIterator:: operator type * () const

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

type * Q3CacheIterator:: 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 * Q3CacheIterator:: 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 * Q3CacheIterator:: 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 * Q3CacheIterator:: 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 * Q3CacheIterator:: operator-= ( uint jump )

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

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