Freigeben über


deque::assign

Löscht Elemente aus einer Doppelschlange und kopiert einen neuen Satz von Elementen in die Zieldoppelschlange.

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

Parameter

  • First
    Die Position des ersten Elements in dem aus der Argumentdoppelschlange zu kopierenden Elementbereich.

  • Last
    Die Position des ersten Elements hinter dem aus der Argumentdoppelschlange zu kopierenden Elementbereich.

  • Count
    Die Anzahl von Kopien eines Elements, das in die Doppelschlange eingefügt wird.

  • Val
    Der Wert des Elements, das in die Doppelschlange eingefügt wird.

  • IList
    Das initializer_list-Element, das in die Doppelschlange eingefügt wird.

Hinweise

Nachdem alle vorhandenen Elemente in der Zieldoppelschlange gelöscht sind, wird von assign entweder ein angegebener Elementbereich aus der ursprünglichen oder einer anderen Doppelschlange in die Zieldoppelschlange eingefügt, oder es werden Kopien eines neuen Elements eines angegebenen Werts in die Zieldoppelschlange eingefügt.

Beispiel

// 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;

}
  

Anforderungen

Header: <deque>

Namespace: std

Siehe auch

Referenz

deque-Klasse

deque::assign und deque::swap

Standardvorlagenbibliothek