Biblioteca C ++ - <forward_list>
Introducción
forward_list es un contenedor de secuencias de uso popular. El contenedor es un objeto que contiene datos del mismo tipo. El contenedor forward_list se implementa como una lista vinculada individualmente, por lo que proporciona acceso secuencial unidireccional a sus datos.
forward_list no proporciona acceso aleatorio rápido, solo admite acceso secuencial en una sola dirección. forward_list permite la operación de inserción y eliminación en cualquier lugar dentro de una secuencia en tiempo constante.
Los elementos de forward_list pueden estar dispersos en diferentes partes de la memoria. El contenedor almacena la información necesaria para permitir el acceso secuencial a sus datos. forward_lists se puede reducir o expandir según sea necesario desde ambos extremos en tiempo de ejecución. El asignador interno cumple automáticamente el requisito de almacenamiento.
Las forward_lists de tamaño cero también son válidas. En ese caso, forward_list.begin () y forward_list.end () apuntan a la misma ubicación. Pero el comportamiento de llamar a front () no está definido.
Definición
A continuación se muestra la definición de std :: forward_list del archivo de encabezado <forward_list>
template < class T, class Alloc = allocator<T> > class forward_list;
Parámetros
T - Tipo de elemento contenido.
T puede ser sustituido por cualquier otro tipo de datos, incluido el tipo definido por el usuario.
Alloc - Tipo de objeto asignador.
De forma predeterminada, se utiliza la plantilla de clase de asignador, que define el modelo de asignación de memoria más simple y es independiente del valor.
Tipos de miembros
Los siguientes tipos de miembros se pueden utilizar como parámetros o tipos de retorno por funciones miembro.
No Señor. | Tipos de miembros | Definición |
---|---|---|
1 | tipo de valor | T (primer parámetro de la plantilla) |
2 | allocator_type | Alloc (segundo parámetro de la plantilla) |
3 | referencia | tipo de valor& |
4 | referencia_const | const value_type & |
5 | puntero | tipo de valor* |
6 | puntero_const | const value_type * |
7 | iterador | un iterador de acceso aleatorio a value_type |
8 | const_iterator | un iterador de acceso aleatorio a const value_type |
9 | tipo de letra | size_t |
10 | tipo_diferencia | ptrdiff_t |
Funciones de <forward_list>
A continuación se muestra una lista de todos los métodos del encabezado <forward_list>.
Constructores
No Señor. | Método y descripción |
---|---|
1 | forward_list :: forward_list constructor predeterminado Construye un forward_list vacío con cero elementos. |
2 | forward_list :: constructor de relleno forward_list Construye un nuevo forward_list con n elementos y asigna val a cada elemento de forward_list. |
3 | forward_list :: constructor de relleno forward_list Construye un nuevo forward_list con n elementos y asigna un valor cero a cada elemento de forward_list. |
4 | forward_list :: constructor de rango forward_list Construye un forward_list con tantos elementos como en el rango del primero al último . |
5 | forward_list :: constructor de copia forward_list Construye un forward_list con copia de cada elemento presente en la lista existente. |
6 | forward_list :: forward_list move constructor Construye un forward_list con el contenido de otro usando la semántica de movimiento. |
7 | forward_list :: constructor de lista de inicializador forward_list Construye un forward_list a partir de la lista de inicialización. |
Incinerador de basuras
No Señor. | Método y descripción |
---|---|
1 | forward_list :: ~ forward_list Destruye el objeto forward_list desasignando su memoria. |
Funciones de miembro
No Señor. | Método y descripción |
---|---|
1 | forward_list :: asignar versión de rango Asigna un nuevo valor a forward_list reemplazando los antiguos. |
2 | forward_list :: asignar versión de relleno Asigna nuevos valores a forward_list reemplazando los antiguos. |
3 | forward_list :: asignar la versión de la lista de inicializadores Asigna nuevos valores a forward_list reemplazando los antiguos. |
4 | forward_list :: before_begin Devuelve un iterador de acceso aleatorio que apunta a la posición antes del primer elemento de forward_list. |
5 | forward_list :: comenzar Devuelve un iterador de acceso aleatorio que apunta al primer elemento de forward_list. |
6 | forward_list :: cbefore_begin Devuelve un iterador de acceso aleatorio constante que apunta a la posición antes del primer elemento de forward_list. |
7 | forward_list :: cbegin Devuelve un iterador de acceso aleatorio constante que apunta al comienzo de forward_list. |
8 | forward_list :: cend Devuelve un iterador de acceso aleatorio constante que apunta al final de forward_list. |
9 | forward_list :: clear Destruye forward_list eliminando todos los elementos de forward_list y establece el tamaño de forward_list en cero. |
10 | forward_list :: emplace_after Construye e inserta un nuevo elemento después de la posición en forward_list y aumenta el tamaño de forward_list en uno. |
11 | forward_list :: emplace_front Inserta un nuevo elemento al principio de forward_list y aumenta el tamaño de forward_list en uno. |
12 | forward_list :: vacío Comprueba si forward_list está vacío o no. |
13 | forward_list :: fin Devuelve un iterador de acceso aleatorio que apunta al último elemento de forward_list. |
14 | forward_list :: erase_after posición versión Elimina un solo elemento después de la posición de forward_list. |
15 | forward_list :: borrar la versión del rango Elimina el rango de elementos de forward_list. |
dieciséis | forward_list :: frente Devuelve una referencia al primer elemento de forward_list. |
17 | forward_list :: get_allocator Devuelve un asignador asociado con forward_list |
18 | forward_list :: insert_after versión de elemento único Extiende el iterador insertando un nuevo elemento después de la posición en forward_list |
19 | forward_list :: insert_after mover versión Extiende el iterador insertando un nuevo elemento después de la posición en forward_list |
20 | forward_list :: insert_after llenar la versión Extiende el iterador insertando un nuevo elemento después de la posición en forward_list |
21 | forward_list :: insert_after rango versión Extiende el iterador insertando un nuevo elemento después de la posición en forward_list |
22 | forward_list :: insert_after versión de la lista de inicializadores Extiende el iterador insertando un nuevo elemento después de la posición en forward_list |
23 | forward_list :: max_size Devuelve el número máximo de elementos que puede contener forward_list. |
24 | forward_list :: fusionar Fusiona dos forward_lists ordenadas en una. |
25 | forward_list :: fusionar mover versión Fusiona dos forward_lists ordenadas en una. |
26 | forward_list :: merge comparar función Fusiona dos forward_lists ordenadas en una. |
27 | forward_list :: merge comparar función mover versión Fusiona dos forward_lists ordenadas en una usando la semántica de movimiento. |
28 | forward_list :: operator = copiar versión Asigna nuevos contenidos a forward_list reemplazando los antiguos. |
29 | forward_list :: operator = mover versión Asigne nuevos contenidos a forward_list reemplazando los antiguos. |
30 | forward_list :: operator = versión de la lista de inicializadores Asigne nuevos contenidos a forward_list reemplazando los antiguos. |
31 | forward_list :: pop_front Elimina el primer elemento de forward_list. |
32 | forward_list :: push_front copia versión Inserta un nuevo elemento al comienzo de forward_list. |
33 | forward_list :: push_front mover versión Inserta un nuevo elemento al comienzo de forward_list. |
34 | forward_list :: eliminar elimina los elementos de forward_list que coinciden con el valor. |
35 | forward_list :: remove_if elimina elementos de forward_list que cumplen la condición. |
36 | forward_list :: redimensionar Cambia el tamaño de forward_list. |
37 | forward_list :: redimensionar la versión del valor Cambia el tamaño de forward_list. |
38 | forward_list :: reverse Invierte el orden de los elementos presentes en forward_list. |
39 | forward_list :: sort Ordena los elementos de forward_list. |
40 | forward_list :: función de clasificación de comparación Ordena los elementos de forward_list. |
41 | forward_list :: splice_after Transfiere todos los elementos de forward_list a * this. |
42 | forward_list :: splice_after mover versión Transferencias todos los elementos de forward_list x a * esto mediante el uso de la semántica movimiento. |
43 | forward_list :: splice_after elemento único Transfiere un elemento al que apunta el iterador i de forward_list x a * this . |
44 | forward_list :: splice_after versión de movimiento de un solo elemento Transfiere el elemento apuntado por el iterador i de forward_list x a * this usando la semántica de movimiento. |
45 | forward_list :: splice_after versión del rango Las transferencias de los elementos en el rango de primera a durar desde x a * esto . |
46 | forward_list :: rango de empalme y versión de movimiento Transferencias los elementos en la gama de primera a duran desde x a * este mediante el uso de la semántica de movimiento. |
47 | forward_list :: intercambio Intercambia el contenido de un forward_list con el contenido de otro forward_list x . |
48 | forward_list :: único Elimina todos los elementos duplicados consecutivos de forward_list. |
49 | forward_list :: único Elimina todos los elementos duplicados consecutivos de forward_list. |
Funciones sobrecargadas de no miembros
No Señor. | Método y descripción |
---|---|
1 | operador == Comprueba si dos forward_lists son iguales o no. |
2 | operador! = Comprueba si dos forward_lists son iguales o no. |
3 | operador < Comprueba si first forward_list es menor que otro o no. |
4 | operador <= Comprueba si first forward_list es menor o igual que otro o no. |
5 | operador> Comprueba si first forward_list es mayor que otro o no. |
6 | operador> = Comprueba si el primer forward_list es mayor o igual que otro o no. |
7 | intercambiar Intercambia el contenido de dos forward_list. |