La función vector::capacity() es una función integrada que devuelve el tamaño del espacio de almacenamiento actualmente asignado para el vector, expresado en términos de elementos. Esta capacidad no es necesariamente igual al tamaño del vector. Puede ser igual o mayor, con el espacio adicional que permite acomodar el crecimiento sin necesidad de reasignar en cada inserción. La capacidad no supone un límite en el tamaño del vector. Cuando esta capacidad se agota y se necesita más, el contenedor la amplía automáticamente (reasignándole espacio de almacenamiento). El límite teórico del tamaño de un vector viene dado por el miembro max_size. Sintaxis:
vector_name.capacity()
Parámetros: La función no acepta ningún parámetro. Valor devuelto: la función devuelve el tamaño del espacio de almacenamiento actualmente asignado para el vector, expresado en términos de elementos.
Complejidad del Tiempo – Constante O(1)
Los siguientes programas ilustran las funciones anteriores: Programa 1:
CPP
// C++ program to illustrate the // vector::capacity() function #include <bits/stdc++.h> using namespace std; int main() { vector<int> v; // inserts elements for (int i = 0; i < 10; i++) { v.push_back(i * 10); } cout << "The size of vector is " << v.size(); cout << "\nThe maximum capacity is " << v.capacity(); return 0; }
The size of vector is 10 The maximum capacity is 16
Programa 2:
CPP
// C++ program to illustrate the // vector::capacity() function #include <bits/stdc++.h> using namespace std; int main() { vector<int> v; // inserts elements for (int i = 0; i < 100; i++) { v.push_back(i * 10); } cout << "The size of vector is " << v.size(); cout << "\nThe maximum capacity is " << v.capacity(); return 0; }
The size of vector is 100 The maximum capacity is 128