vector::assign

指定した要素を、指定した値または値範囲のコピーで置き換えます。

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

パラメーター

  • First
    コピーする要素範囲内の最初の要素の位置。

  • Last
    コピーする要素範囲を超える最初の要素の位置。

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

  • Val
    ベクターに挿入される要素の値。

  • IList
    挿入する要素を含む initializer_list。

解説

ベクター内の既存の要素をすべて削除した後、元のベクター内の指定された範囲の要素をベクターに挿入するか、指定された値の新しい要素のコピーをベクターに挿入します。

使用例

/ vector_assign.cpp
// compile with: /EHsc
#include <vector>
#include <iostream>

int main()
{
    using namespace std;
    vector<int> v1, v2, v3;
    
    v1.push_back(10);
    v1.push_back(20);
    v1.push_back(30);
    v1.push_back(40);
    v1.push_back(50);

    cout << "v1 = ";
    for (auto& v : v1){
        cout << v << " ";
    }
    cout << endl;

    v2.assign(v1.begin(), v1.end());
    cout << "v2 = ";
    for (auto& v : v2){
        cout << v << " ";
    }
    cout << endl;

    v3.assign(7, 4);
    cout << "v3 = ";
    for (auto& v : v3){
        cout << v << " ";
    }
    cout << endl;

    v3.assign({ 5, 6, 7 });
    for (auto& v : v3){
        cout << v << " ";
    }
    cout << endl;
}

出力

v1 = 10 20 30 40 50
v2 = 10 20 30 40 50
v3 = 4 4 4 4 4 4 4
5 6 7

必要条件

ヘッダー: <vector>

名前空間: std

参照

関連項目

vector クラス

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