Compartir a través de


list (Clase)

La clase de lista STL es una clase de plantilla de contenedores de secuencias que mantienen sus elementos en disposición lineal y permiten realizar inserciones y eliminaciones de manera eficiente en cualquier ubicación de la secuencia. La secuencia se almacena como una lista de elementos vinculada de forma bidireccional, cada uno de los cuales contiene un miembro de algún tipo Type.

template <    class Type,     class Allocator=allocator<Type>  > class list

Parámetros

  • Tipo
    El tipo de datos de elementos que se almacenará en la lista.

  • Allocator
    El tipo que representa el objeto asignador almacenado que encapsula los detalles sobre la asignación y la desasignación de memoria de la lista. Este argumento es opcional y el valor predeterminado es allocator<Type>.

Comentarios

En general, la elección del tipo de contenedor se debe tomar según el tipo de búsqueda y de inserción que necesite la aplicación. Los vectores deben ser el contenedor preferido para administrar una secuencia cuando escasee el acceso aleatorio a algún elemento y solo sea necesario realizar inserciones o eliminaciones de elementos al final de una secuencia. El rendimiento del contenedor deque de la clase es superior cuando el acceso aleatorio es necesario y escasean las inserciones y eliminaciones al principio y al final de una secuencia.

Las funciones miembro de lista merge, reverse, unique, remove y remove_if se optimizaron para funcionar en objetos de lista y ofrecer una alternativa de alto rendimiento a sus equivalentes genéricos.

La reasignación de lista se realiza cuando una función miembro debe insertar o borrar elementos de la lista. En todos esos casos, solo los iteradores o las referencias que apuntan a partes borradas de la secuencia controlada dejan de ser válidas.

Incluya el encabezado estándar STL <list> para definir la lista de clases de plantilla container y varias plantillas auxiliares.

Constructores

lista

Construye una lista de un tamaño específico, con elementos de un valor específico, con un allocator específico o como copia de alguna otra lista.

Typedefs

allocator_type

Tipo que representa la clase allocator para un objeto de lista.

const_iterator

Tipo que proporciona un iterador bidireccional que puede leer un elemento const de una lista.

const_pointer

Tipo que proporciona un puntero a un elemento const en una lista.

const_reference

Tipo que proporciona una referencia a un elemento const almacenado en una lista para leer y realizar operaciones const.

const_reverse_iterator

Tipo que proporciona un iterador bidireccional que puede leer cualquier elemento const de una lista.

difference_type

Tipo que proporciona la diferencia entre dos iteradores que hacen referencia a elementos de la misma lista.

iterator

Tipo que proporciona un iterador bidireccional que puede leer o modificar cualquier elemento de una lista.

puntero

Tipo que proporciona un puntero a un elemento de una lista.

reference

Tipo que proporciona una referencia a un elemento const almacenado en una lista para leer y realizar operaciones const.

reverse_iterator

Tipo que proporciona un iterador bidireccional que puede leer o modificar un elemento de una lista invertida.

size_type

Tipo que cuenta el número de elementos de una lista.

value_type

Tipo que representa el tipo de datos almacenados en una lista.

Funciones miembro

assign

Borra elementos de una lista y copia un nuevo conjunto de elementos a la lista de destino.

back

Devuelve una referencia al último elemento de una lista.

begin

Devuelve un iterador que dirige al primer elemento de una lista.

list::cbegin

Devuelve un iterador constante que dirige al primer elemento de una lista.

list::cend

Devuelve un iterador constante que dirige a la ubicación siguiente al último elemento de una lista.

list::clear

Borra todos los elementos de una lista.

list::crbegin

Devuelve un iterador constante que dirige al primer elemento de una lista invertida.

list::crend

Devuelve un iterador constante que dirige a la ubicación siguiente al último elemento de una lista invertida.

list::emplace

Inserta en una posición especificada de una lista un elemento construido en contexto.

list::emplace_back

Agrega un elemento construido en contexto al final de una lista.

list::emplace_front

Agrega un elemento construido en contexto al principio de una lista.

empty

Comprueba si una lista está vacía.

end

Devuelve un iterador que dirige a la ubicación que sigue al último elemento de una lista.

erase

Quita un elemento o un intervalo de elementos de una lista de las posiciones especificadas.

front

Devuelve una referencia al primer elemento de una lista.

get_allocator

Devuelve una copia del objeto allocator utilizado para construir una lista.

insert

Inserta un elemento, varios elementos o un intervalo de elementos en una lista en una posición especificada.

max_size

Devuelve la longitud máxima de una lista.

merge

Quita los elementos de la lista de argumentos, los inserta en la lista de objetivo y ordena el nuevo conjunto combinado de elementos en orden ascendente o en otro orden especificado.

pop_back

Elimina el elemento situado al final de una lista.

pop_front

Elimina el elemento situado al principio de una lista.

push_back

Agrega un elemento al final de una lista.

push_front

Agrega un elemento al principio de una lista.

rbegin

Devuelve un iterador que dirige al primer elemento de una lista invertida.

remove

Borra los elementos de una lista que coinciden con un valor especificado.

remove_if

Borra elementos de la lista para la que se cumple un predicado especificado.

rend

Devuelve un iterador que dirige a la ubicación siguiente al último elemento de una lista invertida.

resize

Especifica un nuevo tamaño de una lista.

reverse

Invierte el orden en que aparecen los elementos en una lista.

size

Devuelve el número de elementos de una lista.

sort

Organiza los elementos de una lista en orden ascendente o con respecto a otra relación de ordenación.

splice

Quita los elementos de la lista de argumentos y los inserta en la lista de destino.

swap

Intercambia los elementos de dos listas.

unique

Quita de la lista los elementos duplicados adyacentes o los elementos adyacentes que cumplan algún otro predicado binario.

Operadores

list::operator=

Reemplaza los elementos de la lista por una copia de otra lista.

Requisitos

Encabezado: <list>

Vea también

Referencia

<list>

Seguridad para subprocesos en la biblioteca estándar de C++

Biblioteca de plantillas estándar