QMapIterator Class Reference<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

该类提供一个java风格const迭代器为QMapQMultiMap

#include <QMapIterator>

公共函数:


QMapIterator
 ( const QMap<Key, T> & map )

bool

findNext  ( const T & value )

bool

findPrevious  ( const T & value )

bool

hasNext  () const

bool

hasPrevious  () const

const Key &

key  () const

Item

next  ()

Item

peekNext  () const

Item

peekPrevious  () const

Item

previous  ()

void

toBack  ()

void

toFront  ()

const T &

value  () const

QMapIterator &

operator=  ( const QMap<Key, T> & map )

 

QMapjava风格和stl风格迭代器。Java风格迭代器是更高水平并且容易的使用比stl。另一面,他的效率有点低。

QMapiterator<Key,T>允许你迭代一个QMap。如果你想修改map当你迭代他时,使用QMutableMapiterator代替。

QMapiterator构造函数构造一个QMap。构造后,迭代器是定位在map的开始。这是怎样循序的迭代所有的元素。

Next()返回下一个项目,并前进。Key()和value()返回刚跳过的最后一个项目的keyvalue。不像stl风格迭代器,java风格迭代器指向项目之间,而不是直接指向项目。

例子:

如果你想找到一个特别的值的所有的发生,使用findNext()和findPrevious()在一个循环中。例如:

多重迭代器能被用来在同一个map。如果map是被修改当一个QMaplterator是活跃,QMaplterator将继续迭代原来的map,忽略修改的拷贝。

 

成员函数文件:

QMapIterator::QMapIterator ( const QMap<Key, T> & map )

bool QMapIterator::findNext ( const T & value )

bool QMapIterator::findPrevious ( const T & value )

bool QMapIterator::hasNext () const

bool QMapIterator::hasPrevious () const

const Key & QMapIterator::key () const

Item QMapIterator::next ()

Item QMapIterator::peekNext () const

Item QMapIterator::peekPrevious () const

Item QMapIterator::previous ()

void QMapIterator::toBack ()

void QMapIterator::toFront ()

const T & QMapIterator::value () const

QMapIterator & QMapIterator::operator= ( const QMap<Key, T> & map )