función de capacidad vectorial() en C++ STL

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;
}
Producción:

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;
}
Producción:

The size of vector is 100
The maximum capacity is 128

Publicación traducida automáticamente

Artículo escrito por gopaldave y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *