QJsonArray::iterator Class
class QJsonArray::iteratorDie Klasse „ QJsonArray::iterator “ stellt einen nicht-konstanten Iterator im STL-Stil für „ QJsonArray “ bereit. Mehr...
QJsonArray::iterator – Vergleiche
| Kategorie | Vergleichbare Typen |
|---|---|
| stark | QJsonArray::iterator |
| strong | QJsonArray::const_iterator. |
Öffentliche Typen
Öffentliche Funktionen
| iterator() | |
| iterator(const QJsonArray::iterator &other) | |
| QJsonValueRef | operator*() const |
| QJsonArray::iterator | operator+(qsizetype j) const |
| QJsonArray::iterator & | operator++() |
| QJsonArray::iterator | operator++(int) |
| QJsonArray::iterator & | operator+=(qsizetype j) |
| qsizetype | operator-(QJsonArray::iterator other) const |
| QJsonArray::iterator | operator-(qsizetype j) const |
| QJsonArray::iterator & | operator--() |
| QJsonArray::iterator | operator--(int) |
| QJsonArray::iterator & | operator-=(qsizetype j) |
| const QJsonValueConstRef * | operator->() const |
| QJsonValueRef | operator[](qsizetype j) const |
Verwandte Nicht-Mitglieder
| bool | operator!=(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs) |
| bool | operator!=(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs) |
| bool | operator<(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs) |
| bool | operator<(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs) |
| bool | operator<=(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs) |
| bool | operator<=(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs) |
| bool | operator==(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs) |
| bool | operator==(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs) |
| bool | operator>(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs) |
| bool | operator>(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs) |
| bool | operator>=(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs) |
| bool | operator>=(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs) |
Ausführliche Beschreibung
QJsonArray::iterator ermöglicht es Ihnen, einen ` QJsonArray ` zu durchlaufen und das mit dem Iterator verknüpfte Array-Element zu ändern. Wenn Sie einen `const QJsonArray` durchlaufen möchten, verwenden Sie stattdessen ` QJsonArray::const_iterator `. Es ist generell empfehlenswert, ` QJsonArray::const_iterator ` auch für einen nicht-konstanten ` QJsonArray ` zu verwenden, es sei denn, Sie müssen das ` QJsonArray ` über den Iterator ändern. Konstante Iteratoren sind etwas schneller und verbessern die Lesbarkeit des Codes.
Der Standardkonstruktor von ` QJsonArray::iterator ` erstellt einen nicht initialisierten Iterator. Sie müssen ihn mithilfe einer Funktion von ` QJsonArray ` wie ` QJsonArray::begin()`, ` QJsonArray::end()` oder ` QJsonArray::insert()` initialisieren, bevor Sie mit der Iteration beginnen können.
Die meisten „ QJsonArray “-Funktionen akzeptieren einen ganzzahligen Index anstelle eines Iterators. Aus diesem Grund sind Iteratoren in Verbindung mit „ QJsonArray “ selten von Nutzen. Ein Anwendungsfall, in dem Iteratoren im STL-Stil durchaus sinnvoll sind, ist die Verwendung als Argumente für „ generic algorithms “.
Für dasselbe Array können mehrere Iteratoren verwendet werden. Beachten Sie jedoch, dass jeder nicht-konstante Funktionsaufruf, der auf dem ` QJsonArray ` ausgeführt wird, alle vorhandenen Iteratoren undefiniert macht.
Siehe auch QJsonArray::const_iterator.
Dokumentation zu Mitgliedstypen
iterator::iterator_category
Ein Synonym für „std::random_access_iterator_tag“, das angibt, dass es sich bei diesem Iterator um einen Iterator mit wahlfreiem Zugriff handelt.
Dokumentation zu den Mitgliedsfunktionen
iterator::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 ` QJsonArray::begin()` und ` QJsonArray::end()`.
[constexpr noexcept default] iterator::iterator(const QJsonArray::iterator &other)
Erstellt eine Instanz von „ iterator “ durch Kopieren.
QJsonValueRef iterator::operator*() const
Gibt eine veränderbare Referenz auf das aktuelle Element zurück.
Sie können den Wert eines Elements ändern, indem Sie den Operator *() auf der linken Seite einer Zuweisung verwenden.
Der Rückgabewert ist vom Typ „ QJsonValueRef “, einer Hilfsklasse für „ QJsonArray “ und „ QJsonObject “. Wenn Sie ein Objekt vom Typ „ QJsonValueRef “ erhalten, können Sie es so verwenden, als wäre es eine Referenz auf ein „ QJsonValue “. Wenn Sie ihm einen Wert zuweisen, wirkt sich die Zuweisung auf das Zeichen im „ QJsonArray “ von „ QJsonObject “ aus, von dem Sie die Referenz erhalten haben.
QJsonArray::iterator iterator::operator+(qsizetype 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.
Siehe auch operator-() und operator+=().
QJsonArray::iterator &iterator::operator++()
Der Präfixoperator „ ++ “, ++it, springt mit dem Iterator zum nächsten Element im Array und gibt einen Iterator auf das neue aktuelle Element zurück.
Der Aufruf dieser Funktion auf ` QJsonArray::end()` führt zu undefinierten Ergebnissen.
Siehe auch operator--().
QJsonArray::iterator iterator::operator++(int)
Der Postfix- ++ -Operator it++ verschiebt den Iterator auf das nächste Element im Array und gibt einen Iterator auf das zuvor aktuelle Element zurück.
Dies ist eine überladene Funktion.
QJsonArray::iterator &iterator::operator+=(qsizetype j)
Bewegt den Iterator um j Elemente vorwärts. Ist j negativ, bewegt sich der Iterator rückwärts.
Siehe auch ` operator-=()` und ` operator+()`.
qsizetype iterator::operator-(QJsonArray::iterator other) const
Gibt die Anzahl der Elemente zwischen dem Element zurück, auf das „ other “ verweist, und dem Element, auf das dieser Iterator verweist.
QJsonArray::iterator iterator::operator-(qsizetype j) const
Gibt einen Iterator für das Element zurück, das sich „ j “ Positionen rückwärts von diesem Iterator befindet. Ist „ j “ negativ, bewegt sich der Iterator vorwärts.
Siehe auch „ operator+()“ und „ operator-=()“.
QJsonArray::iterator &iterator::operator--()
Der Präfixoperator „ -- “ ( --it) macht das vorhergehende Element zum aktuellen Element und gibt einen Iterator auf das neue aktuelle Element zurück.
Der Aufruf dieser Funktion für ` QJsonArray::begin()` führt zu undefinierten Ergebnissen.
Siehe auch ` operator++()`.
QJsonArray::iterator 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.
QJsonArray::iterator &iterator::operator-=(qsizetype j)
Bewegt den Iterator um j Elemente zurück. Ist j negativ, bewegt sich der Iterator vorwärts.
Siehe auch ` operator+=()` und ` operator-()`.
const QJsonValueConstRef *iterator::operator->() const
Gibt einen Zeiger auf eine veränderbare Referenz auf das aktuelle Element zurück.
QJsonValueRef iterator::operator[](qsizetype j) const
Gibt eine veränderbare Referenz auf das Element am Offset j aus dem Element zurück, auf das dieser Iterator zeigt (das Element an der Position *this + j).
Diese Funktion dient dazu, dass sich QJsonArray -Iteratoren wie C++-Zeiger verhalten.
Der Rückgabewert ist vom Typ „ QJsonValueRef “, einer Hilfsklasse für „ QJsonArray “ und „ QJsonObject “. Wenn Sie ein Objekt vom Typ „ QJsonValueRef “ erhalten, können Sie es so verwenden, als wäre es eine Referenz auf ein „ QJsonValue “. Wenn Sie ihm einen Wert zuweisen, wirkt sich die Zuweisung auf das Element in „ QJsonArray “ oder „ QJsonObject “ aus, von dem Sie die Referenz erhalten haben.
Siehe auch operator+().
Verwandte Nicht-Mitglieder
[noexcept] bool operator!=(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)
[noexcept] bool operator!=(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)
Gibt „ true “ zurück, wenn „ lhs “ auf ein anderes Element verweist als der Iterator „ rhs “; andernfalls wird „ false “ zurückgegeben.
Siehe auch operator==().
[noexcept] bool operator<(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)
[noexcept] bool operator<(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)
Gibt „ true “ zurück, wenn das Element, auf das der Iterator „ lhs “ verweist, kleiner ist als das Element, auf das der Iterator „ rhs “ verweist.
[noexcept] bool operator<=(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)
[noexcept] bool operator<=(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)
Gibt „ true “ zurück, wenn das Element, auf das der Iterator „ lhs “ verweist, kleiner oder gleich dem Element ist, auf das der Iterator „ rhs “ verweist.
[noexcept] bool operator==(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)
[noexcept] bool operator==(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)
Gibt „ true “ zurück, wenn „ lhs “ auf dasselbe Element verweist wie der Iterator „ rhs “; andernfalls wird „ false “ zurückgegeben.
Siehe auch operator!=().
[noexcept] bool operator>(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)
[noexcept] bool operator>(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)
Gibt „ true “ zurück, wenn das Element, auf das der Iterator „ lhs “ verweist, größer ist als das Element, auf das der Iterator „ rhs “ verweist.
[noexcept] bool operator>=(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)
[noexcept] bool operator>=(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)
Gibt „ true “ zurück, wenn das Element, auf das der Iterator „ lhs “ verweist, größer oder gleich dem Element ist, auf das der Iterator „ rhs “ verweist.
© 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.