Partager via


deque::assign

Efface les éléments d'un deque et copie une nouveau jeu d'éléments vers le deque ciblé.

template<class InputIterator>
    void assign(
    InputIterator First,
    InputIterator Last);
void assign(
    size_type Count,
    const Type& Val
);
void assign(
    initializer_list<Type> IList
);

Paramètres

  • First
    Position du premier élément dans la plage d'éléments à copier depuis le deque d'argument.

  • Last
    Position du premier élément dans la plage d'éléments à copier depuis le deque d'argument.

  • Count
    Le nombre de copies d'un élément inséré dans le deque.

  • Val
    La valeur de l'élément en train d'être inséré dans le deque.

  • IList
    L'initializer_list inséré dans le deque.

Notes

Une fois que tous les éléments existants dans le deque cible sont effacés, assign insère une plage spécifiée d'éléments depuis le deque d'origine ou depuis un autre deque dans le deque cible, ou bien insère des copies d'un élément d'une valeur spécifiée dans le deque cible.

Exemple

// deque_assign.cpp
// compile with: /EHsc
#include <deque>
#include <iostream>
#include <initializer_list>

int main()
{
    using namespace std;
    deque <int> c1, c2;
    deque <int>::const_iterator cIter;

    c1.push_back(10);
    c1.push_back(20);
    c1.push_back(30);
    c2.push_back(40);
    c2.push_back(50);
    c2.push_back(60);

    deque<int> d1{ 1, 2, 3, 4 };
    initializer_list<int> iList{ 5, 6, 7, 8 };
    d1.assign(iList);

    cout << "d1 = ";
    for (int i : d1)
        cout << i;
    cout << endl;

    cout << "c1 =";
    for (int i : c1)
        cout << i;
    cout << endl;

    c1.assign(++c2.begin(), c2.end());
    cout << "c1 =";
    for (int i : c1)
        cout << i;
    cout << endl;

    c1.assign(7, 4);
    cout << "c1 =";
    for (int i : c1)
        cout << i;
    cout << endl;

}
  

Configuration requise

En-tête: <deque>

Espace de noms : std

Voir aussi

Référence

deque, classe

deque::assign et deque::swap

Bibliothèque STL (Standard Template Library)