QMapIterator Class Reference

QMapIterator Class Reference
该类提供一个 java 风格 const 迭代器为 QMap QMultiMap
#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 )
 
QMap java 风格和 stl 风格迭代器。 Java 风格迭代器是更高水平并且容易的使用比 stl 。另一面,他的效率有点低。
QMapiterator<Key,T> 允许你迭代一个 QMap 。如果你想修改 map 当你迭代他时,使用 QMutableMapiterator 代替。
QMapiterator 构造函数构造一个 QMap 。构造后,迭代器是定位在 map 的开始。这是怎样循序的迭代所有的元素。
QMap<int, QWidget *> map;
      
 ...
      
 QMapIterator<int, QWidget *> i(map);
      
 while (i.hasNext()) {
      
     i.next();
      
     qDebug() << i.key() << ": " << i.value();
      
 }
      
Next ()返回下一个项目,并前进。 Key ()和 value ()返回刚跳过的最后一个项目的 key value 。不像 stl 风格迭代器, java 风格迭代器指向项目之间,而不是直接指向项目。
例子:
QMapIterator<int, QWidget *> i(map);
      
 i.toBack();
      
 while (i.hasPrevious()) {
      
     i.previous();
      
     qDebug() << i.key() << ": " << i.value();
      
 }
      
如果你想找到一个特别的值的所有的发生,使用 findNext ()和 findPrevious ()在一个循环中。例如:
QMapIterator<int, QWidget *> i(map);
      
 while (i.findNext(widget)) {
      
     qDebug() << "Found widget " << widget << " under key "
      
              << i.key();
      
 }
      
多重迭代器能被用来在同一个 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 )

 
 

你可能感兴趣的:(职场,Class,reference,休闲,QMapIterator)