La lista de reenvío en STL implementa una lista enlazada individualmente. Introducidas a partir de C++ 11, las listas de reenvío son más útiles que otros contenedores para las operaciones de inserción, eliminación y movimiento (como ordenar) y permiten 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 del elemento siguiente solamente, mientras que la lista realiza un seguimiento de los elementos anteriores y siguientes.
Esta función se utiliza para intercambiar el contenido de una lista de reenvío con otra lista de reenvío del mismo tipo y tamaño.
Sintaxis:
forwardlistname1.swap(forwardlistname2) Parameters : The name of the forward lists with which the contents have to be swapped. Result : All the elements of the 2 forward list are swapped.
Ejemplos:
Input : myflist1 = {1, 2, 3, 4} myflist2 = {3, 5, 7, 9} myflist1.swap(myflist2); Output : myflist1 = {3, 5, 7, 9} myflist2 = {1, 2, 3, 4} Input : myflist1 = {1, 3, 5, 7} myflist2 = {2, 4, 6, 8} myflist1.swap(myflist2); Output : myflist1 = {2, 4, 6, 8} myflist2 = {1, 3, 5, 7}
Errores y excepciones
1. Arroja un error si las listas de reenvío no son del mismo tipo.
2. Lanza un error si las listas de reenvío no son del mismo tamaño.
2. De lo contrario, tiene una garantía básica de lanzamiento sin excepción.
// CPP program to illustrate // Implementation of swap() function #include <forward_list> #include <iostream> using namespace std; int main() { // forward list container declaration forward_list<int> myflist1{ 1, 2, 3, 4 }; forward_list<int> myflist2{ 3, 5, 7, 9 }; // using swap() function to // swap elements of forward lists myflist1.swap(myflist2); // printing the first forward list cout << "myflist1 = "; for (auto it = myflist1.begin(); it != myflist1.end(); ++it) cout << ' ' << *it; // printing the second forward list cout << endl << "myflist2 = "; for (auto it = myflist2.begin(); it != myflist2.end(); ++it) cout << ' ' << *it; return 0; }
Producción:
myflist1 = 3 5 7 9 myflist2 = 1 2 3 4
Publicación traducida automáticamente
Artículo escrito por AyushSaxena y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA