Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Langue C

Maîtriser std::vector en C++ : Tableaux dynamiques, itérateurs et exemples pratiques

Qu'est-ce qu'un vector C++ ?

Un vector C++ est un tableau dynamique qui se redimensionne automatiquement quand des éléments sont ajoutés ou supprimés. Ses éléments sont stockés de manière contiguë, permettant un accès indexé rapide et un parcours via itérateurs.

L'insertion se fait à la fin en temps constant amorti. La suppression du dernier élément est aussi en temps constant, tandis que l'insertion ou la suppression au début ou au milieu nécessite le décalage des éléments, résultant en une complexité temporelle linéaire.

Quand utiliser un vector ?

Comment initialiser les vectors en C++

std::vector<type-donnée> nom (taille, valeur); // taille et valeur sont optionnels

Itérateurs

Les itérateurs fournissent une interface de type pointeur vers les éléments du vector. Les fonctions d'itérateur courantes incluent :

Modificateurs

Les modificateurs changent le contenu du vector. Les fonctions clés sont :

Exemple 1 : Itération de base


#include <iostream>
#include <vector>
int main() {
    std::vector<int> nums;
    for (int a = 1; a <= 5; ++a) {
        nums.push_back(a);
    }
    std::cout << "Output from begin and end: ";
    for (auto it = nums.begin(); it != nums.end(); ++it) {
        std::cout << *it << ' ';
    }
    std::cout << "\nOutput from cbegin and cend: ";
    for (auto it = nums.cbegin(); it != nums.cend(); ++it) {
        std::cout << *it << ' ';
    }
    return 0;
}

Sortie :

Maîtriser std::vector en C++ : Tableaux dynamiques, itérateurs et exemples pratiques

Exemple 2 : Modificateurs avancés


#include <iostream>
#include <vector>
int main() {
    std::vector<int> nums;
    nums.assign(5, 1); // cinq éléments, tous initialisés à 1
    std::cout << "Vector contents: ";
    for (size_t i = 0; i < nums.size(); ++i) {
        std::cout << nums[i] << ' ';
    }
    nums.push_back(2);
    std::cout << "\nLast element: " << nums.back();
    nums.pop_back();
    std::cout << "\nVector contents: ";
    for (int a : nums) std::cout << a << ' ';
    nums.insert(nums.begin(), 7);
    std::cout << "\nFirst element: " << nums.front();
    nums.clear();
    std::cout << "\nSize after clear(): " << nums.size();
    return 0;
}

Sortie :

Maîtriser std::vector en C++ : Tableaux dynamiques, itérateurs et exemples pratiques

Fonctions de capacité

Déterminez et manipulez les caractéristiques de stockage d'un vector avec les fonctions suivantes :

Exemple 3 : Exploration de la capacité


#include <iostream>
#include <vector>
int main() {
    std::vector<int> vector1;
    for (int x = 1; x <= 10; ++x) {
        vector1.push_back(x);
    }
    std::cout << "Vector size: " << vector1.size() << std::endl;
    std::cout << "Vector capacity: " << vector1.capacity() << std::endl;
    std::cout << "Maximum size of vector: " << vector1.max_size() << std::endl;
    vector1.resize(5);
    std::cout << "Vector size after resizing: " << vector1.size() << std::endl;
    if (!vector1.empty())
        std::cout << "Vector is not empty" << std::endl;
    else
        std::cout << "Vector is empty" << std::endl;
    return 0;
}

Sortie :

Maîtriser std::vector en C++ : Tableaux dynamiques, itérateurs et exemples pratiques

Points clés à retenir

Langue C

  1. Maîtriser les fonctions de la bibliothèque standard C : Guide pratique
  2. Opérateurs C++ expliqués : Types, exemples et programmes d'exemple
  3. Boucle do-while en C++ : Syntaxe, exemples pratiques et boucles imbriquées
  4. Maîtriser le switch-case en C++ : Syntaxe, utilisation et exemples pratiques
  5. Maîtriser l'allocation de tableaux dynamiques en C++ : Guide pratique avec exemples de code
  6. Maîtriser les pointeurs en C++ : Concepts, exemples et applications pratiques
  7. Surcharge d'opérateurs en C++ : Guide pratique avec exemples de code
  8. Maîtriser std::list en C++ : Syntaxe, Fonctions et Exemples Pratiques
  9. Les Fonctions en C++ Expliquées avec des Exemples de Code Pratiques