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