public member function

std::list::operator=

<list>
list<T,Allocator>& operator= ( const list<T,Allocator>& x );
Copy container content
Assigns as the new content for the container a copy of the elements in x.

The elements contained in the object before the call are dropped, and replaced by copies of those in list x, if any.

After a call to this member function, both the list object and x will have the same size and compare equal to each other.

Parameters

x
A list object containing elements of the same type.

Return value

*this

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// assignment operator with lists
#include <iostream>
#include <list>
using namespace std;

int main ()
{
  list<int> first (3);      // list of 3 zero-initialized ints
  list<int> second (5);     // list of 5 zero-initialized ints

  second=first;
  first=list<int>();

  cout << "Size of first: " << int (first.size()) << endl;
  cout << "Size of second: " << int (second.size()) << endl;
  return 0;
}

Both list containers of int elements are initialized to sequences with different sizes. Then, second is assigned to first, so both are now equal and with a size of 3. And then, first is assigned to a newly constructed empty container object, so its size is finally 0. Output:
Size of first: 0
Size of second: 3

Complexity

Linear on sizes (destruction, copy construction).

See also