Bibliothèque de vecteurs C ++ - fonction assign ()

La description

La fonction C ++ std::vector::assign()attribuer de nouvelles valeurs aux éléments vectoriels en remplaçant les anciennes. Il modifie la taille du vecteur si nécessaire.

Si l'allocation de mémoire se produit, l'allocation est allouée par l'allocateur interne.

Déclaration

Voici la déclaration de l'en-tête std :: vector :: assign () de la fonction std :: vector :: assign ().

C ++ 98

template <class InputIterator>
void assign(InputIterator first, InputIterator last);

C ++ 11

template <class InputIterator>
wvoid assign (InputIterator first, InputIterator last);

Paramètres

  • first - Entrez l'itérateur à la position initiale dans la plage.

  • last - Entrer l'itérateur à la position finale dans la plage.

Valeur de retour

Aucun

Des exceptions

Cette fonction membre ne lève jamais d'exception. Si la valeur de (premier, dernier) n'est pas un index valide, le comportement n'est pas défini.

Complexité temporelle

Linéaire ie O (n)

Exemple

L'exemple suivant montre l'utilisation de la fonction std :: vector :: assign ().

#include <iostream>
#include <vector>

using namespace std;

int main(void) {
   vector<int> v(5, 100);

   cout << "Initial vector contents" << endl;
   for (int i = 0; i < v.size(); ++i)
      cout << v[i] << endl;

   cout << endl;
  
   cout << "Modified vector contents" << endl;
  
   v.assign(v.begin(), v.begin() + 2);
   for (int i = 0; i < v.size(); ++i)
      cout << v[i] << endl;
  
   return 0;
}

Compilons et exécutons le programme ci-dessus, cela produira le résultat suivant -

Initial vector contents
100
100
100
100
100
Modified vector contents
100
100