# std::list::resize

From cppreference.com
< cpp‎ | container‎ | list

void resize( size_type count, T value = T() ); |  | (until C++11)
void resize( size_type count ); | (1) | (since C++11)
void resize( size_type count, const value_type& value ); | (2) | (since C++11)

Resizes the container to contain `count` elements.

If the current size is greater than `count`, the container is reduced to its first `count` elements.

If the current size is less than `count`, additional elements are appended and initialized with copies of `value`. | (until C++11)
If the current size is less than `count`, 1) additional default-inserted elements are appended 2) additional copies of `value` are appended | (since C++11)

### Parameters

count | - | new size of the container
value | - | the value to initialize the new elements with
Type requirements
- `T` must meet the requirements of `DefaultInsertable` in order to use overload (1).
- `T` must meet the requirements of `CopyInsertable` in order to use overload (2).

### Return value

(none)

### Complexity

Linear in the difference between the current size and `count`.

### Example

Run this code

    #include <iostream>
    #include <list>
    int main()
    {
        std::list<int> c = {1, 2, 3};
        std::cout << "The list holds: ";
        for(auto& el: c) std::cout << el << ' ';
        std::cout << '\n';
        c.resize(5);
        std::cout << "After resize up 5: ";
        for(auto& el: c) std::cout << el << ' ';
        std::cout << '\n';
        c.resize(2);
        std::cout << "After resize down to 2: ";
        for(auto& el: c) std::cout << el << ' ';
        std::cout << '\n';
    }

Output:

    The list holds: 1 2 3
    After resize up 5: 1 2 3 0 0
    After resize down to 2: 1 2

### See also

size | returns the number of elements (public member function)
insert | inserts elements (public member function)
erase | erases elements (public member function)

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/container/list/resize&oldid=50540"