Creación de una lista mediante la asignación de los todos los elementos de otra lista | STL C ++

Aquí, vamos a aprender cómo crear una lista mediante la asignación de los todos los elementos de una lista existente en C ++ STL ? Puede ser posible gracias a la lista de asignación directa y el uso de la función () lista :: asignación.

Hay dos métodos para implementar la función que …

1) mediante la asignación de la lista existente dirigir a la nueva lista

    list<int> list2 = list1;

2) mediante el uso de la lista de asignación :: ()

    list<int> list2;
list2.assign(list1.begin(), list1.end());

ejemplo:

En este ejemplo, tenemos una lista lista1 con 10 elementos y estamos creando otra lista list2 , los elementos de list2 serán asignando a través de la lista1 por utilizando lista: Asignar () función, que es una función de biblioteca de “encabezado de la lista” . Y, también estamos creando una lista list3 que va a ser asignada directamente a través del lista1 .

Programa:

#include <iostream>
#include <list>
using namespace std;
//function to display the list
void dispList(list<int> L)
{
//declaring iterator to the list
list<int>::iterator l_iter;
for (l_iter = L.begin(); l_iter != L.end(); l_iter++)
cout<< *l_iter<< " ";
cout<<endl;
}
int main()
{
//list1 declaration
list<int> list1 = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100};
//displaying list1
cout<<"Size of list1: "<<list1.size()<<endl;
cout<<"Elements of list1: ";
dispList(list1);
//declaring list2 and assigning the Elements
//of list1
list<int> list2;
list2.assign(list1.begin(), list1.end());
//displaying list2
cout<<"Size of list2: "<<list2.size()<<endl;
cout<<"Elements of list2: ";
dispList(list2);
//declaring list3 by assigning with list1
list<int> list3 = list1;
//displaying list3
cout<<"Size of list3: "<<list3.size()<<endl;
cout<<"Elements of list3: ";
dispList(list3);
return 0;
}

salida

Size of list1: 10
Elements of list1: 10 20 30 40 50 60 70 80 90 100
Size of list2: 10
Elements of list2: 10 20 30 40 50 60 70 80 90 100
Size of list3: 10
Elements of list3: 10 20 30 40 50 60 70 80 90 100


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *