## C++ Vector shrink_to_fit() Function

The C++ vector.shrink_to_fit() discards excess capacity to match the vector’s current size. This function takes no parameters.

Syntax:

Example, using a vector “v1”.

```
v1.shrink_to_fit();
```

Reduces vector capacity to fit current size.

The below example is a complete program using vector shrink_to_fit() function to remove the excess capacity of the vector.

```
#include <iostream>
#include <vector>
int main ()
{
std::vector<int> v1 (50);
std::cout << "Capacity of v1: " << v1.capacity() << std::endl;
v1.resize(8);
std::cout << "Capacity of v1: " << v1.capacity() << std::endl;
v1.shrink_to_fit();
std::cout << "Capacity of v1: " << v1.capacity() << std::endl;
return 0;
}
```

Output:

Capacity of v1: 50

Capacity of v1: 50

Capacity of v1: 8

The vector v1 is initially sized to hold 50 elements at which point the vector capacity is also 50. The vector is then resized to only 8 elements, but the capacity remains unchanged to hold 50 elements. The shrink_to_fit function is called to reduce the excess capacity to meet the current needs of only 8 elements, which the last output statement verifies.