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