deque::assign
Usuwa elementy z listy dwukierunkowej i kopiuje nowy zestaw elementów, do docelowego obiektu kolejki dwukierunkowej.
template<class InputIterator>
void assign(
InputIterator First,
InputIterator Last);
void assign(
size_type Count,
const Type& Val
);
void assign(
initializer_list<Type> IList
);
Parametry
First
Pozycja pierwszego elementu w zakresie elementów, które mają być skopiowane z argumentów kolejki dwukierunkowej.Last
Pozycja pierwszego elementu poza zakresem elementów, które mają być skopiowane z argumentów kolejki dwukierunkowej.Count
Liczba kopii elementu, która jest wstawiana do kolejki dwukierunkowej.Val
Wartość elementu, który jest wstawiany na kolejkę dwukierunkową.IList
Lista initializer_list, która jest wstawiana do kolejki dwukierunkowej.
Uwagi
Po usunięciu wszystkich istniejących elementów z docelowej kolejki dwukierunkowej assign wstawia określony zakres elementów z oryginalnej kolejki dwukierunkowej, lub z jakiejś innej kolejki dwukierunkowej, do docelowej kolejki dwukierunkowej lub wstawia kopie nowego elementu określonej wartości, do docelowej kolejki dwukierunkowej.
Przykład
// 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;
}
Wymagania
Nagłówek: <deque>
Przestrzeń nazw: std