##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# std::deque::resize

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

[edit template]

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)

### [edit] Parameters

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

### [edit] Return value

(none)

### [edit] Complexity

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

### [edit] Example

Run this code

    #include <iostream>
    #include <deque>
    int main()
    {
        std::deque<int> c = {1, 2, 3};
        std::cout << "The deque 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 deque holds: 1 2 3
    After resize up 5: 1 2 3 0 0
    After resize down to 2: 1 2

### [edit] See also

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

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