C++ List Library - resize() Function


Advertisements

Description

The C++ function std::list::resize() changes the size of list. If n is smaller than current size then extra elements are destroyed. If n is greater than current container size then new elements are inserted at the end of list. If val is specified then new elements are initialed with val.

Declaration

Following is the declaration for std::list::resize() function form std::list header.

C++98

void resize (size_type n, value_type val = value_type());

C++11

void resize (size_type n, const value_type& val);

Parameters

  • n − Number of element to be inserted.

  • val − Initial value for container elements.

Return value

None

Exceptions

If reallocation fails then bad_alloc exception is thrown.

Time complexity

Linear i.e. O(n)

Example

The following example shows the usage of std::list::resize() function.

#include <iostream>
#include <list>

using namespace std;

int main(void) {
   list<int> l;

   cout << "Initial size of list = " << l.size() << endl;

   l.resize(5, 10);

   cout << "Size of list after resize operation = " << l.size() << endl;

   cout << "List contains following elements" << endl;

   for (auto it = l.begin(); it != l.end(); ++it)
      cout << *it << endl;

   return 0;
}

Let us compile and run the above program, this will produce the following result −

Initial size of list = 0
Size of list after resize operation = 5
List contains following elements
10
10
10
10
10
list.htm
Advertisements