Partager via


vector::insert (STL/CLR)

Ajoute des éléments à une position spécifiée.

    iterator insert(iterator where, value_type val);
    void insert(iterator where, size_type count, value_type val);
    template<typename InIt>
        void insert(iterator where, InIt first, InIt last);
    void insert(iterator where,
        System::Collections::Generic::IEnumerable<Value>^ right);

Paramètres

  • count
    Nombre d'éléments à insérer.

  • tout d'abord
    Début de la plage à insérer.

  • last
    Fin de la plage à insérer.

  • right
    Énumération à insérer.

  • val
    Valeur de l'élément à insérer.

  • where
    Où dans le conteneur insérer avant.

Notes

Chacune des fonctions membres insère, avant que l'élément sur lequel pointe where dans la séquence contrôlée, une séquence spécifiée par les opérandes restants.

La première fonction membre insère un élément avec la valeur val et retourne un itérateur qui indique que l'élément récemment inséré.Vous l'utilisez pour insérer un élément unique avant un emplacement indiqué par un itérateur.

La deuxième fonction membre insère une répétition des éléments d' count de valeur val.Vous l'utilisez pour insérer des éléments zéro ou plus contigus qui sont toutes les copies de la même valeur.

Si InIt est un type entier, la troisième fonction membre se comporte les mêmes qu' insert(where, (size_type)first, (value_type)last).Sinon, il insère la séquence [first,last).Vous l'utilisez pour insérer des éléments zéro ou plus contigus copiés d'une autre séquence.

La quatrième fonction membre insère la séquence indiquée par right.Vous l'utilisez pour insérer une séquence décrite par un énumérateur.

En insérant un élément unique, le nombre de copies d'élément est linéaire dans le nombre d'éléments entre le point d'insertion et la fin plus proche de la séquence.(En insérant un ou plusieurs éléments à chaque extrémité de la séquence, copie d'élément ne se produit pas.) Si InIt est un itérateur d'entrée, la troisième fonction membre effectue une insertion unique pour chaque élément de la séquence.Sinon, en insérant des éléments d' N , le nombre de copies d'élément est linéaire dans N plus le nombre d'éléments entre le point d'insertion et la fin plus proche de la séquence.

Exemple

// cliext_vector_insert.cpp 
// compile with: /clr 
#include <cliext/vector> 
 
int main() 
    { 
    cliext::vector<wchar_t> c1; 
    c1.push_back(L'a'); 
    c1.push_back(L'b'); 
    c1.push_back(L'c'); 
 
// display initial contents " a b c" 
    for each (wchar_t elem in c1) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// insert a single value using iterator 
    cliext::vector<wchar_t>::iterator it = c1.begin(); 
    System::Console::WriteLine("insert(begin()+1, L'x') = {0}", 
        *c1.insert(++it, L'x')); 
    for each (wchar_t elem in c1) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// insert a repetition of values 
    cliext::vector<wchar_t> c2; 
    c2.insert(c2.begin(), 2, L'y'); 
    for each (wchar_t elem in c2) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// insert an iterator range 
    it = c1.end(); 
    c2.insert(c2.end(), c1.begin(), --it); 
    for each (wchar_t elem in c2) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// insert an enumeration 
    c2.insert(c2.begin(),   // NOTE: cast is not needed 
        (System::Collections::Generic::IEnumerable<wchar_t>^)%c1); 
    for each (wchar_t elem in c2) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
    return (0); 
    } 
 
  

Configuration requise

en-tête :<cliext/vecteur>

Cliext del'espace de noms :

Voir aussi

Référence

vector (STL/CLR)

vector::assign (STL/CLR)