1、Qt迭代器
Qt 有两种迭代器类:Java 风格的迭代器和 STL 风格的迭代器
STL 风格迭代器和 Java 风格迭代器之间的根本区别在于,STL 迭代器指向元素,而 Java 风格迭代器在概念上指向元素之间,其理念是,这种迭代器永远不会(在概念上)变得无效:如果在它们周围添加或删除元素,它们仍然指向元素之间,迭代可以正常进行。
1.1 Java风格迭代器
容器类 | 只读迭代器 | 读写迭代器 |
---|---|---|
QList, QQueue | QListItcrator | QMutableListItcrator |
QLinkedList | QLinkedListIterator | QMutableLinkedListIterator |
QVector, QStack | QVectorllcrator | QMutableVectorIterator |
QSet | QSetItcrator | QMutableSetItcrator |
QMap<Key, T>, QMultiMap<Key, T> | QMapIterator<Key, T> | QMutableMapIterator<Key, T> |
QHash<Key, T>, QMultiHash<Key, T> | QHashIterator<Key, T> | QMutablcHashlterator< |