Auf dieser Seite

QLinkedList::const_iterator Class

class QLinkedList::const_iterator

Die Klasse „ QLinkedList::const_iterator “ stellt einen const-Iterator im STL-Stil für „ QLinkedList “ bereit. Mehr...

Öffentliche Funktionen

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

Ausführliche Beschreibung

QLinkedList bietet sowohl Iteratoren im STL-Stil als auch Iteratoren im Java-Stil. Die Iteratoren im STL-Stil sind low-leveler und umständlicher in der Verwendung; andererseits sind sie etwas schneller und bieten Entwicklern, die bereits mit der STL vertraut sind, den Vorteil der Vertrautheit.

QLinkedList<T>::const_iterator ermöglicht es Ihnen, eine „ QLinkedList “ <T> zu durchlaufen. Wenn Sie die „ QLinkedList “ während des Durchlaufs ändern möchten, müssen Sie stattdessen QLinkedList::iterator verwenden. Es ist im Allgemeinen empfehlenswert, QLinkedList::const_iterator auch bei einem nicht-konstanten QLinkedList zu verwenden, es sei denn, Sie müssen die QLinkedList über den Iterator ändern. Konstante Iteratoren sind etwas schneller und können die Lesbarkeit des Codes verbessern.

Der Standardkonstruktor von ` QLinkedList::const_iterator ` erstellt einen nicht initialisierten Iterator. Sie müssen ihn mit einer Funktion wie ` QLinkedList::constBegin()`, ` QLinkedList::constEnd()` oder ` QLinkedList::insert()` initialisieren, bevor Sie mit der Iteration beginnen können. Hier ist eine typische Schleife, die alle in einer Liste gespeicherten Elemente ausgibt:

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;

Iteratoren im STL-Stil können als Argumente für ` generic algorithms` verwendet werden. So finden Sie beispielsweise ein Element in der 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;

Es können mehrere Iteratoren für dieselbe Liste verwendet werden. Wenn Sie Elemente zur Liste hinzufügen, bleiben bestehende Iteratoren gültig. Wenn Sie Elemente aus der Liste entfernen, werden Iteratoren, die auf die entfernten Elemente verweisen, zu „dangling Iteratoren“.

Warnung: Iteratoren auf implizit gemeinsam genutzten Containern funktionieren nicht genau wie STL-Iteratoren. Sie sollten es vermeiden, einen Container zu kopieren, solange Iteratoren auf diesem Container aktiv sind. Weitere Informationen finden Sie unter „Problem mit Iteratoren bei impliziter gemeinsamen Nutzung“.

Siehe auch „ QLinkedList::iterator “ und „ QLinkedListIterator “.

Dokumentation zu Mitgliedsfunktionen

const_iterator::const_iterator()

Erstellt einen nicht initialisierten Iterator.

Funktionen wie operator*() und operator++() sollten nicht auf einem nicht initialisierten Iterator aufgerufen werden. Verwenden Sie operator=(), um ihm vor der Verwendung einen Wert zuzuweisen.

Siehe auch „ QLinkedList::constBegin()“ und „ QLinkedList::constEnd()“.

const_iterator::const_iterator(QLinkedList<T>::iterator other)

Erstellt eine Kopie von „ other “.

bool const_iterator::operator!=(const QLinkedList<T>::const_iterator &other) const

Gibt „ true “ zurück, wenn „ other “ auf ein anderes Element als diesen Iterator verweist; andernfalls wird „ false “ zurückgegeben.

Siehe auch operator==().

const T &const_iterator::operator*() const

Gibt eine Referenz auf das aktuelle Element zurück.

Siehe auch „ operator->()“.

QLinkedList<T>::const_iterator const_iterator::operator+(int j) const

Gibt einen Iterator für das Element zurück, das sich „ j “ Positionen vor diesem Iterator befindet. (Ist „ j “ negativ, bewegt sich der Iterator rückwärts.)

Diese Operation kann bei großen Werten für ` j ` langsam sein.

Siehe auch operator-().

QLinkedList<T>::const_iterator &const_iterator::operator++()

Der Präfix-Operator ++ (++it) verschiebt den Iterator zum nächsten Element in der Liste und gibt einen Iterator auf das neue aktuelle Element zurück.

Der Aufruf dieser Funktion auf ` QLinkedList<T>::constEnd()` führt zu undefinierten Ergebnissen.

Siehe auch ` operator--()`.

QLinkedList<T>::const_iterator const_iterator::operator++(int)

Der Postfix-Operator „++“ (it++) verschiebt den Iterator zum nächsten Element in der Liste und gibt einen Iterator auf das zuvor aktuelle Element zurück.

Dies ist eine überladene Funktion.

QLinkedList<T>::const_iterator &const_iterator::operator+=(int j)

Bewegt den Iterator um j Elemente weiter. (Ist j negativ, bewegt sich der Iterator rückwärts.)

Bei großen Werten für ` j ` kann dieser Vorgang langsam sein.

Siehe auch operator-=() und operator+().

QLinkedList<T>::const_iterator const_iterator::operator-(int j) const

Diese Funktion gibt einen Iterator für das Element zurück, das sich an der Position „ j “ rückwärts von diesem Iterator befindet. (Ist „ j “ negativ, bewegt sich der Iterator vorwärts.)

Diese Operation kann bei großen Werten für ` j ` langsam sein.

Siehe auch ` operator+()`.

QLinkedList<T>::const_iterator &const_iterator::operator--()

Der Präfix-Operator (--it) setzt das vorhergehende Element als aktuelles Element und gibt einen Iterator auf das neue aktuelle Element zurück.

Der Aufruf dieser Funktion auf ` QLinkedList::begin()` führt zu undefinierten Ergebnissen.

Siehe auch operator++().

QLinkedList<T>::const_iterator const_iterator::operator--(int)

Der Postfix-Operator (it--) macht das vorangehende Element zum aktuellen Element und gibt einen Iterator auf das zuvor aktuelle Element zurück.

Dies ist eine überladene Funktion.

QLinkedList<T>::const_iterator &const_iterator::operator-=(int j)

Bewegt den Iterator um j Elemente zurück. (Ist j negativ, bewegt sich der Iterator vorwärts.)

Bei großen Werten für ` j ` kann dieser Vorgang langsam sein.

Siehe auch „ operator+=()“ und „ operator-()“.

const T *const_iterator::operator->() const

Gibt einen Zeiger auf das aktuelle Element zurück.

Siehe auch „ operator*()“.

bool const_iterator::operator==(const QLinkedList<T>::const_iterator &other) const

Gibt „ true “ zurück, wenn „ other “ auf dasselbe Element wie dieser Iterator verweist; andernfalls wird „ false “ zurückgegeben.

Siehe auch 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.