Ajouter de la même valeur à plusieurs reprises à std::vector (répéter)
Je veux ajouter une valeur à plusieurs reprises dans un std::vector. E. g. ajouter l'entier de la valeur 1 à cinq reprises pour le vecteur:
std::vector<int> vec;
vec.add(1, 5);
vec doit être de la forme {1,1,1,1,1} par la suite. Est-il propre c++ moyen de le faire?
Vous devez vous connecter pour publier un commentaire.
Ça dépend vraiment de ce que vous voulez faire.
Faire un vecteur de longueur 5, rempli avec ceux:
Grandir un vecteur par 5 et de le remplir avec ceux:
Ou la redimensionner (si vous savez la taille initiale):
Vous pouvez également compléter avec des éléments à l'aide de l'une des nombreuses versions de
fill
, par exemple:et ainsi de suite.... Lire la documentation de la bibliothèque, certaines de ces fonctions renvoient des informations utiles, aussi.
Vous pouvez simplement utiliser le
std::vector
constructeur de cette:La signature est la suivante:
La norme
algorithm
en-tête a un certain nombre de fonctions qui peuvent être utilisées dans les cas de ce genre.std::fill_n
serait travailler pour votre cas.:Suffit d'utiliser
std::vector::insert
.Vous pouvez utiliser la méthode d'assignation:
Cela permettra de supprimer les éléments dans le vecteur avant d'en ajouter de nouveaux.