×

# Creating a list by assigning the all elements of another list | C++ STL

Here, we are going to learn how to create a list by assigning the all elements of an existing list in C++ STL? It can be possible by direct assigning list and using list::assign() function.
Submitted by IncludeHelp, on November 02, 2018

## Creating a list by assigning the all elements of another list

There are two methods to implement it...

1. by assigning the existing list direct to the new list

```list<int> list2 = list1;
```

2. by using list::assign() function

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

## C++ program to create a list by assigning the all elements of another list

In this program, we have a list list1 with 10 elements and we are creating another list list2, the elements of list2 will be assigning through the list1 by using list:assign() function, which is a library function of "list header". And, we are also creating a list list3 that is going to be assigned directly through the list1.

```#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;
}
```

### Output

```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
```