Maison > développement back-end > C++ > Comment puis-je réduire la capacité d'un std::vector en C ?

Comment puis-je réduire la capacité d'un std::vector en C ?

Linda Hamilton
Libérer: 2024-11-28 20:34:15
original
577 Les gens l'ont consulté

How Can I Reduce the Capacity of an std::vector in C  ?

Réduire la capacité d'un std::vector

Lorsqu'il s'agit de vecteurs qui sont principalement utilisés pour la lecture après avoir été remplis, il peut être bénéfique de réduire leur capacité.

Actuel Solutions

En règle générale, les développeurs ont recours à la création d'un nouveau vecteur avec une taille spécifiée et à la copie des éléments. Cependant, cette approche introduit une opération de copie inutile.

Solution C 11

Pour les utilisateurs de C 11, la fonction membre Shrink_to_fit() fournit une solution pratique.

vec.shrink_to_fit();
Copier après la connexion

Détails de mise en œuvre

Comme indiqué dans le projet Norme C 11, Shrink_to_fit() est une "demande non contraignante" pour réduire la capacité à la taille. Cette flexibilité permet des optimisations spécifiques à la mise en œuvre. En pratique, la plupart des implémentations tenteront de réduire la capacité à la taille demandée. Cependant, ils conservent la liberté d'optimiser en fonction de facteurs tels que les ressources système ou les exigences futures potentielles.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal