QLinkedList::const_iterator Class
class QLinkedList::const_iteratorLa classe QLinkedList::const_iterator fournit un itérateur constant de style STL pour QLinkedList. Plus d'informations...
Fonctions publiques
| const_iterator() | |
| const_iterator(QLinkedList<T>::iterator other) | |
| bool | operator!=(const QLinkedList<T>::const_iterator &other) const |
| const T & | operator*() const |
| QLinkedList<T>::const_iterator | operator+(int j) const |
| QLinkedList<T>::const_iterator & | operator++() |
| QLinkedList<T>::const_iterator | operator++(int) |
| QLinkedList<T>::const_iterator & | operator+=(int j) |
| QLinkedList<T>::const_iterator | operator-(int j) const |
| QLinkedList<T>::const_iterator & | operator--() |
| QLinkedList<T>::const_iterator | operator--(int) |
| QLinkedList<T>::const_iterator & | operator-=(int j) |
| const T * | operator->() const |
| bool | operator==(const QLinkedList<T>::const_iterator &other) const |
Description détaillée
QLinkedList comporte à la fois des itérateurs de style STL et des itérateurs de style Java. Les itérateurs de style STL sont plus bas niveau et plus lourds à utiliser ; d'un autre côté, ils sont légèrement plus rapides et, pour les développeurs qui connaissent déjà STL, ils ont l'avantage de la familiarité.
QLinkedList<T>::const_iterator permet d'itérer sur un <T> QLinkedList. Si vous souhaitez modifier le QLinkedList au cours de l'itération, vous devez utiliser QLinkedList::iterator à la place. Il est généralement conseillé d'utiliser QLinkedList::const_iterator sur un QLinkedList non-const également, à moins que vous n'ayez besoin de modifier le QLinkedList par l'intermédiaire de l'itérateur. Les itérateurs const sont légèrement plus rapides et peuvent améliorer la lisibilité du code.
Le constructeur par défaut de QLinkedList::const_iterator crée un itérateur non initialisé. Vous devez l'initialiser à l'aide d'une fonction telle que QLinkedList::constBegin(), QLinkedList::constEnd() ou QLinkedList::insert() avant de pouvoir commencer l'itération. Voici une boucle typique qui imprime tous les éléments stockés dans une liste :
QLinkedList<QString> list; list.append("January"); list.append("February"); ... list.append("December"); QLinkedList<QString>::const_iterator i; for (i = list.constBegin(); i != list.constEnd(); ++i) cout << *i << Qt::endl;
Les itérateurs de style STL peuvent être utilisés comme arguments de generic algorithms. Par exemple, voici comment trouver un élément dans la liste :
QLinkedList<QString> list; ... QLinkedList<QString>::const_iterator it = std::find(list.constBegin(), list.constEnd(), "Joel"); if (it != list.constEnd()) cout << "Found Joel" << Qt::endl;
Plusieurs itérateurs peuvent être utilisés sur la même liste. Si vous ajoutez des éléments à la liste, les itérateurs existants resteront valides. Si vous supprimez des éléments de la liste, les itérateurs qui pointent vers les éléments supprimés deviendront des itérateurs pendants.
Attention : Les itérateurs sur des conteneurs implicitement partagés ne fonctionnent pas exactement comme les itérateurs STL. Vous devez éviter de copier un conteneur lorsque des itérateurs sont actifs sur ce conteneur. Pour plus d'informations, lisez le document Implicit sharing iterator problem.
Voir aussi QLinkedList::iterator et QLinkedListIterator.
Documentation sur les fonctions membres
const_iterator::const_iterator()
Construit un itérateur non initialisé.
Les fonctions telles que operator*() et operator++() ne doivent pas être appelées sur un itérateur non initialisé. Utilisez operator=() pour lui attribuer une valeur avant de l'utiliser.
Voir aussi QLinkedList::constBegin() et QLinkedList::constEnd().
const_iterator::const_iterator(QLinkedList<T>::iterator other)
Construit une copie de other.
bool const_iterator::operator!=(const QLinkedList<T>::const_iterator &other) const
Renvoie true si other pointe vers un élément différent de cet itérateur ; sinon, renvoie false.
Voir aussi operator==().
const T &const_iterator::operator*() const
Renvoie une référence à l'élément en cours.
Voir aussi operator->().
QLinkedList<T>::const_iterator const_iterator::operator+(int j) const
Renvoie un itérateur vers l'élément situé à j positions en avant de cet itérateur. (Si j est négatif, l'itérateur revient en arrière).
Cette opération peut être lente pour les grandes valeurs de j.
Voir également operator-().
QLinkedList<T>::const_iterator &const_iterator::operator++()
L'opérateur préfixe ++ (++it) fait passer l'itérateur à l'élément suivant de la liste et renvoie un itérateur au nouvel élément courant.
L'appel de cette fonction sur QLinkedList<T>::constEnd() conduit à des résultats indéfinis.
Voir également operator--().
QLinkedList<T>::const_iterator const_iterator::operator++(int)
L'opérateur postfixe ++ (it++) fait passer l'itérateur à l'élément suivant de la liste et renvoie un itérateur à l'élément courant précédent.
Il s'agit d'une fonction surchargée.
QLinkedList<T>::const_iterator &const_iterator::operator+=(int j)
Avance l'itérateur de j éléments. (Si j est négatif, l'itérateur recule).
Cette opération peut être lente pour les grandes valeurs de j.
Voir également operator-=() et operator+().
QLinkedList<T>::const_iterator const_iterator::operator-(int j) const
Cette fonction renvoie un itérateur vers l'élément situé à j positions en arrière de cet itérateur. (Si j est négatif, l'itérateur avance).
Cette opération peut être lente pour les grandes valeurs de j.
Voir également operator+().
QLinkedList<T>::const_iterator &const_iterator::operator--()
L'opérateur préfixe - (--it) rend l'élément précédent actuel et renvoie un itérateur vers le nouvel élément actuel.
L'appel de cette fonction sur QLinkedList::begin() conduit à des résultats indéfinis.
Voir aussi operator++().
QLinkedList<T>::const_iterator const_iterator::operator--(int)
L'opérateur postfixe - (it--) rend l'élément précédent courant et renvoie un itérateur vers l'élément courant précédent.
Il s'agit d'une fonction surchargée.
QLinkedList<T>::const_iterator &const_iterator::operator-=(int j)
Fait reculer l'itérateur de j éléments. (Si j est négatif, l'itérateur avance).
Cette opération peut être lente pour les grandes valeurs de j.
Voir aussi operator+=() et operator-().
const T *const_iterator::operator->() const
Renvoie un pointeur sur l'élément courant.
Voir aussi operator*().
bool const_iterator::operator==(const QLinkedList<T>::const_iterator &other) const
Renvoie true si other pointe sur le même élément que cet itérateur ; sinon, renvoie false.
Voir aussi operator!=().
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.