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