Ajouter des éléments
Fait partie de la section Logique et Flux du Journey C++ de Coddy — leçon 11 sur 56.
Maintenant que vous savez comment créer des vecteurs, apprenons comment y ajouter des éléments après qu'ils ont été créés. La méthode push_back() est votre outil principal pour agrandir un vecteur en ajoutant de nouveaux éléments à sa fin.
La méthode push_back() prend un seul argument - la valeur que vous souhaitez ajouter - et l'ajoute à la fin du vecteur :
std::vector<int> numbers;
numbers.push_back(10);
numbers.push_back(20);
numbers.push_back(30);Dans cet exemple, nous commençons avec un vecteur vide et utilisons push_back() pour ajouter trois entiers. Après ces opérations, notre vecteur contient les éléments [10, 20, 30] dans cet ordre.
La beauté de push_back() est qu'il gère automatiquement toute la gestion de la mémoire. Lorsque vous ajoutez des éléments et que le vecteur manque d'espace, il alloue automatiquement plus de mémoire et copie les éléments existants vers le nouvel emplacement. Cela rend les vecteurs incroyablement pratiques pour construire des collections de données lorsque vous ne connaissez pas la taille finale à l'avance.
Défi
FacileCréez un programme qui démontre l'ajout d'éléments à un vecteur en utilisant la méthode push_back(). Vous commencerez avec un vecteur vide et le construirez dynamiquement en ajoutant des nombres dans une séquence spécifique.
Les entrées suivantes seront fournies :
- Un entier
nreprésentant le nombre de nombres à ajouter au vecteur - Ensuite,
nentiers qui doivent être ajoutés au vecteur un par un
Votre programme doit :
- Créer un
std::vector<int>vide nomménumbers - Utiliser une boucle pour lire chacun des
nnombres d'entrée - Pour chaque nombre, utiliser
push_back()pour l'ajouter à la fin du vecteur - Après avoir ajouté chaque nombre, afficher la taille actuelle du vecteur et le nombre qui vient d'être ajouté
- Enfin, afficher tous les éléments du vecteur sur une seule ligne, séparés par des espaces
Utilisez le format de sortie exact suivant :
Added [number], size is now [current size]
Added [number], size is now [current size]
...
Final vector: [num1] [num2] [num3] ...Utilisez la méthode .size() pour obtenir le nombre actuel d'éléments dans le vecteur après chaque ajout. Pour la sortie finale, utilisez l'opérateur crochet [] pour accéder à chaque élément par son index.
Aide-mémoire
Utilisez push_back() pour ajouter des éléments à la fin d'un vecteur :
std::vector<int> numbers;
numbers.push_back(10);
numbers.push_back(20);
numbers.push_back(30);La méthode push_back() gère automatiquement la gestion de la mémoire, en agrandissant le vecteur selon les besoins lors de l'ajout d'éléments.
Essayez vous-même
#include <iostream>
#include <vector>
using namespace std;
int main() {
// Lire le nombre d'éléments à ajouter
int n;
cin >> n;
// Créer un vecteur vide
vector<int> numbers;
// TODO: Écrivez votre code ici
// Lire n nombres et les ajouter au vecteur en utilisant push_back()
// Afficher la sortie requise après chaque ajout
// Afficher le vecteur final
cout << "Final vector: ";
// TODO: Afficher tous les éléments séparés par des espaces
return 0;
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Logique et Flux
1Pointeurs et mémoire
Qu'est-ce qu'un pointeur ?Opérateur d'adresseOpérateur de déréférencementPointeurs nulsPointeurs et tableauxMémoire dynamique avec 'new'Libérer la mémoire avec 'delete'Récapitulatif - Pratique des pointeurs2Vecteurs (Tableaux dynamiques)
Introduction à std::vectorCréer un vecteurAjouter des élémentsAccéder aux élémentsTaille d'un vecteurItérer avec une boucle ForBoucle For basée sur l'intervalleSupprimer des élémentsRécapitulatif - Opérations sur les vecteurs3Projet : Outil de liste de tâches
Présentation du projetAjouter une tâche