La lista de reenvío en STL implementa una lista enlazada individualmente. Introducida desde C++ 11, la lista de reenvío es más útil que otros contenedores en las operaciones de inserción, eliminación y movimiento (como ordenar) y permite la inserción y eliminación constante de elementos en el tiempo. Se diferencia de la lista por el hecho de que la lista de reenvío realiza un seguimiento de la ubicación solo del siguiente elemento, mientras que la lista realiza un seguimiento de los elementos anterior y siguiente.
La función begin() se usa para devolver un iterador que apunta al primer elemento del contenedor de la lista de avance. La función begin() devuelve un iterador bidireccional al primer elemento del contenedor.
Sintaxis:
forwardlistname.begin()
Parámetros: NA
Tipo de devolución: esta función devuelve un iterador bidireccional que apunta al primer elemento.
Ejemplos:
Input : myflist{1, 2, 3, 4, 5}; myflist.begin(); Output : returns an iterator to the element 1 Input : myflist{8, 7}; myflist.begin(); Output : returns an iterator to the element 8
Errores y Excepciones 1. No tiene garantía de lanzamiento de excepciones. 2. Muestra error cuando se pasa un parámetro.
CPP
// CPP program to illustrate // Implementation of begin() function #include <forward_list> #include <iostream> using namespace std; int main() { // declaration of forward list container forward_list<int> myflist{ 1, 2, 3, 4, 5 }; // using begin() to print list for (auto it = myflist.begin(); it != myflist.end(); ++it) cout << ' ' << *it; return 0; }
Producción:
1 2 3 4 5
Complejidad de tiempo: O(1)
La función end() se usa para devolver un iterador que apunta al último elemento del contenedor de la lista. La función end() devuelve un iterador bidireccional al último elemento del contenedor.
Sintaxis:
forwardlistname.end()
Parámetros: NA
Tipo de devolución: esta función devuelve un iterador bidireccional que apunta al último elemento.
Ejemplos:
Input : myflist{1, 2, 3, 4, 5}; myflist.end(); Output : returns an iterator to the element 5 Input : myflist{8, 7}; myflist.end(); Output : returns an iterator to the element 7
Errores y Excepciones 1. No tiene garantía de lanzamiento de excepciones. 2. Muestra error cuando se pasa un parámetro.
CPP
// CPP program to illustrate // Implementation of end() function #include& lt; forward_list & gt; #include& lt; iostream & gt; using namespace std; int main() { // declaration of forward list container forward_list& lt; int& gt; myflist{ 1, 2, 3, 4, 5 }; // using end() to print forward list for (auto it = myflist.begin(); it != myflist.end(); ++it) cout& lt; < ' ' & lt; < *it; return 0; }
Producción:
1 2 3 4 5
Complejidad de tiempo: O(1)
Veamos las diferencias en forma tabular de la siguiente manera:
reenviar_lista::comenzar() | adelante_lista::fin() |
Se utiliza para devolver un iterador que apunta al primer elemento del contenedor forward_list. | Se utiliza para devolver un iterador que hace referencia al elemento más allá del final en el contenedor forward_list. |
Su sintaxis es la siguiente: iterator begin() |
Su sintaxis es la siguiente: iterator end() |
No toma ningún parámetro. | No toma ningún parámetro. |
Su complejidad es constante. | Su complejidad es constante. |
Su validez de iterador no cambia. | Su validez de iterador no cambia. |
Publicación traducida automáticamente
Artículo escrito por AyushSaxena y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA