El deque ::shrink_to_fit() es una función incorporada en C++ STL que reduce la capacidad del contenedor para que se ajuste a su tamaño y destruye todos los elementos más allá de la capacidad. Esta función no reduce el tamaño del contenedor. Se utiliza cuando a un contenedor se le ha asignado más memoria de la que necesitaba, entonces esta función libera esa cantidad de memoria que se ha asignado extra.
Sintaxis:
deque_name.shrink_to_fit()
Parámetros: Esta función no acepta ningún parámetro.
Valor devuelto: La función no devuelve nada.
Los siguientes programas ilustran la función anterior:
Ejemplo-1
// C++ program to illustrate // the deque::shrink_to_fit() #include <bits/stdc++.h> using namespace std; int main() { // Initialized deque deque<int> d(10); for (int i = 0; i < 5; i++) d[i] = i; // Initial deque cout << " Deque size initially: " << d.size(); cout << "\n Deque elements are: "; for (int i = 0; i < 10; i++) cout << d[i] << " "; // changes the size of the Deque // but does not destroys the elements d.resize(7); cout << "\n Deque size after resize(7): " << d.size(); cout << "\n Deque elements after resize(7) are: "; for (int i = 0; i < 10; i++) cout << d[i] << " "; // Shrinks to the size // till which elements are // destroys the elements after 5 d.shrink_to_fit(); cout << "\n Deque size after shrink_to_fit(): " << d.size(); cout << "\n Deque elements after shrink_to_fit() are: "; for (int i = 0; i < 10; i++) cout << d[i] << " "; return 0; }
Deque size initially: 10 Deque elements are: 0 1 2 3 4 0 0 0 0 0 Deque size after resize(7): 7 Deque elements after resize(7) are: 0 1 2 3 4 0 0 0 0 0 Deque size after shrink_to_fit(): 7 Deque elements after shrink_to_fit() are: 0 1 2 3 4 0 0 0 0 0
Ejemplo-2
// C++ program to illustrate // the deque::shrink_to_fit() #include <bits/stdc++.h> using namespace std; int main() { // creating a deque deque<int> d(100); cout << "Size of d is : " << d.size() << endl; // resizing d.resize(20); cout << "Size of d after resize is : " << d.size() << endl; d.shrink_to_fit(); return 0; }
Size of d is : 100 Size of d after resize is : 20
Nota: la funciónshrink_to_fit() es muy útil en el caso de un vector donde el tamaño del contenedor cambia con fluidez.
Publicación traducida automáticamente
Artículo escrito por ankit15697 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA