Le Guide Complet de vector::size() en C++ STL (Standard Template Library)

A

Amine Abidi - Lead Software Engineer C++/Qt - Co-fondateur PointerLab

May 4, 2025

Le Guide Complet de vector::size() en C++ STL (Standard Template Library)

Size d'un Vector en C++

La fonction vector::size() est une méthode essentielle de la bibliothèque standard C++ (STL) pour travailler avec les vecteurs. Elle permet de connaître la taille actuelle d'un vecteur, c'est-à-dire le nombre d'éléments qu'il contient. Que vous soyez débutant ou développeur expérimenté, comprendre comment utiliser size() est crucial pour manipuler efficacement les vecteurs.

Dans cet article, nous répondrons aux questions suivantes :

  • Comment obtenir la taille d'un vecteur en C++ ?
  • Quelle est la taille maximale d'un vecteur en C++ ?
  • Est-ce que size() est une opération O(1) ?
  • Comment initialiser un vecteur avec une taille spécifique ?
  • Comment réduire ou définir la taille d'un vecteur ?

💡 Consultez notre article Vector insert() en C++ pour insérer des éléments dans un vecteur.


Qu'est-ce que vector::size() en C++ ?

La méthode size() retourne le nombre d'éléments actuellement stockés dans un vecteur. Elle est définie dans l'en-tête `` et fait partie de la STL.

Prototype :

size_type size() const noexcept;
  • Retourne : Un entier non signé (size_type) représentant le nombre d'éléments dans le vecteur.
  • Complexité : O(1), car elle accède directement à une variable interne.

Comment obtenir la taille d'un vecteur en C++ ?

Pour obtenir la taille d'un vecteur, utilisez simplement la méthode size().

Exemple :

#include 
#include 

- int main() {
- std::vector nombres = {1, 2, 3, 4, 5};
    std::cout 
#include 

- int main() {
- std::vector nombres(10, 0); // Vecteur de taille 10, initialisé avec des zéros
    std::cout 
#include 

- int main() {
- std::vector nombres;
    std::cout 
#include 

- int main() {
- std::vector nombres = {1, 2, 3, 4, 5};
- nombres.resize(3); // Réduit la taille à 3
    std::cout 
#include 

- int main() {
- std::vector nombres = {1, 2, 3};
- std::cout << "Taille du vecteur : " << nombres.size() << std::endl;
    return 0;
}

Bonnes pratiques avec vector::size()

  • Vérifiez toujours la taille avant d'accéder aux éléments : Utilisez size() pour éviter les dépassements de limites.
  • Préférez size() à des calculs manuels : Elle est optimisée et garantit une complexité O(1).
  • Combinez avec resize() pour ajuster la taille : Cela permet de gérer dynamiquement la mémoire.

Ressources complémentaires

Pour approfondir vos connaissances sur les vecteurs en C++, consultez :


Quiz : Testez vos connaissances

  1. Que retourne la méthode vector::size() ?
  • a) La capacité maximale du vecteur
  • b) Le nombre d'éléments actuellement dans le vecteur
  • c) La taille en mémoire du vecteur
  1. Quelle est la complexité de vector::size() ?
  • a) O(n)
  • b) O(log n)
  • c) O(1)
  1. Comment réduire la taille d'un vecteur à 5 éléments ?
  • a) vecteur.shrink_to_fit(5);
  • b) vecteur.resize(5);
  • c) vecteur.size(5);
  1. Quelle méthode permet de connaître la taille maximale d'un vecteur ?
  • a) size()
  • b) capacity()
  • c) max_size()

Réponses au Quiz

  1. Que retourne la méthode vector::size() ?
    ✅ Réponse : b) Le nombre d'éléments actuellement dans le vecteur

  2. Quelle est la complexité de vector::size() ?
    ✅ Réponse : c) O(1)

  3. Comment réduire la taille d'un vecteur à 5 éléments ?
    ✅ Réponse : b) vecteur.resize(5);

  4. Quelle méthode permet de connaître la taille maximale d'un vecteur ?
    ✅ Réponse : c) max_size()


Conclusion

La méthode vector::size() est un outil indispensable pour manipuler les vecteurs en C++. Elle permet de connaître la taille actuelle d'un vecteur avec une complexité O(1), ce qui la rend rapide et efficace. En combinant size() avec d'autres méthodes comme resize() ou push_back(), vous pouvez gérer dynamiquement vos données et optimiser vos programmes.

Maîtriser vector::size() est une étape clé pour devenir un expert en C++ et en STL. Continuez à explorer les fonctionnalités des vecteurs pour tirer le meilleur parti de cette structure de données puissante.

Découvrez l'ensemble de notre blog sur le C++