次の方法で共有


deque::assign

deque から要素を消去し、対象の deque に要素の新しいセットをコピーします。

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

パラメーター

  • First
    deque 引数からコピーされる要素範囲内の最初の要素の位置。

  • Last
    deque 引数からコピーされる要素範囲を超える最初の要素の位置。

  • Count
    deque に挿入される要素のコピーの数。

  • Val
    deque に挿入される要素の値。

  • IList
    deque に挿入される initializer_list。

解説

対象の deque 内にある既存の要素が消去されると、assign によって、元の deque または他の deque からコピーされる指定の要素範囲が対象の deque に挿入されるか、指定した値の新しい要素のコピーが対象の deque に挿入されます。

使用例

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

}
  

必要条件

ヘッダー: <deque>

名前空間: std

参照

関連項目

deque クラス

deque::assign と deque::swap

標準テンプレート ライブラリ