En esta página

QLinkedList::const_iterator Class

class QLinkedList::const_iterator

La clase QLinkedList::const_iterator proporciona un iterador const de estilo STL para QLinkedList. Más...

Funciones públicas

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

Descripción detallada

QLinkedList incluye iteradores de estilo STL e iteradores de estilo Java. Los iteradores estilo STL son de más bajo nivel y más engorrosos de usar; por otro lado, son ligeramente más rápidos y, para los desarrolladores que ya conocen STL, tienen la ventaja de la familiaridad.

QLinkedList<T>::const_iterator permite iterar sobre un QLinkedList<T>. Si desea modificar el QLinkedList a medida que itera sobre él, debe utilizar QLinkedList::iterator en su lugar. Generalmente es una buena práctica usar QLinkedList::const_iterator sobre un QLinkedList no-const también, a menos que necesites cambiar el QLinkedList a través del iterador. Los iteradores const son ligeramente más rápidos, y pueden mejorar la legibilidad del código.

El constructor por defecto QLinkedList::const_iterator crea un iterador no inicializado. Debes inicializarlo usando una función como QLinkedList::constBegin(), QLinkedList::constEnd(), o QLinkedList::insert() antes de que puedas empezar a iterar. Este es un bucle típico que imprime todos los elementos almacenados en una lista:

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;

Los iteradores de estilo STL pueden utilizarse como argumentos de generic algorithms. Por ejemplo, aquí se muestra cómo encontrar un elemento en la lista:

QLinkedList<QString> list;
...
QLinkedList<QString>::const_iterator it = std::find(list.constBegin(),
                                                    list.constEnd(), "Joel");
if (it != list.constEnd())
    cout << "Found Joel" << Qt::endl;

Se pueden utilizar múltiples iteradores en la misma lista. Si añades elementos a la lista, los iteradores existentes seguirán siendo válidos. Si eliminas elementos de la lista, los iteradores que apunten a los elementos eliminados se convertirán en iteradores colgantes.

Advertencia: Los iteradores en contenedores implícitamente compartidos no funcionan exactamente como los iteradores STL. Debes evitar copiar un contenedor mientras los iteradores estén activos en ese contenedor. Para más información, lee Problema de los iteradores compartidos implícitamente.

Véase también QLinkedList::iterator y QLinkedListIterator.

Documentación de funciones miembro

const_iterator::const_iterator()

Construye un iterador no inicializado.

Funciones como operator*() y operator++() no deben ser llamadas en un iterador no inicializado. Utilice operator=() para asignarle un valor antes de utilizarlo.

Véase también QLinkedList::constBegin() y QLinkedList::constEnd().

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

Construye una copia de other.

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

Devuelve true si other apunta a un elemento distinto de este iterador; en caso contrario devuelve false.

Véase también operator==().

const T &const_iterator::operator*() const

Devuelve una referencia al elemento actual.

Véase también operator->().

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

Devuelve un iterador al elemento en j posiciones hacia adelante desde este iterador. (Si j es negativo, el iterador va hacia atrás).

Esta operación puede ser lenta para valores grandes de j.

Véase también operator-().

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

El operador prefijo ++ (++it) avanza el iterador al siguiente elemento de la lista y devuelve un iterador al nuevo elemento actual.

Llamar a esta función en QLinkedList<T>::constEnd() conduce a resultados indefinidos.

Véase también operator--().

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

El operador postfijo ++ (it++) avanza el iterador al siguiente elemento de la lista y devuelve un iterador al elemento previamente actual.

Se trata de una función sobrecargada.

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

Avanza el iterador en j elementos. (Si j es negativo, el iterador retrocede).

Esta operación puede ser lenta para valores grandes de j.

Véase también operator-=() y operator+().

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

Esta función devuelve un iterador al elemento en j posiciones hacia atrás desde este iterador. (Si j es negativo, el iterador va hacia adelante).

Esta operación puede ser lenta para valores grandes de j.

Véase también operator+().

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

El operador prefijo - (--it) hace actual el elemento precedente y devuelve un iterador al nuevo elemento actual.

Llamar a esta función en QLinkedList::begin() conduce a resultados indefinidos.

Véase también operator++().

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

El operador postfijo - (it--) hace actual el elemento precedente y devuelve un iterador al elemento previamente actual.

Se trata de una función sobrecargada.

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

Hace que el iterador retroceda en j elementos. (Si j es negativo, el iterador avanza).

Esta operación puede ser lenta para valores grandes de j.

Véase también operator+=() y operator-().

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

Devuelve un puntero al elemento actual.

Véase también operator*().

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

Devuelve true si other apunta al mismo elemento que este iterador; en caso contrario devuelve false.

Véase también 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.