vector :: assign()是“ vector”标头的库函数,用于初始化矢量或将内容分配给矢量,将新内容分配给矢量,更新现有内容,并调整矢量的大小根据内容。
注意:要使用向量,请包含<vector>标头。
vector :: assign()函数的语法
vector::assign(iterator_first, iterator_last); vector::assign(size_type n, value_type value);
参数:
在类型1的情况下, iterator_first,iterator_last –是序列的第一个和最后一个迭代器,我们将为其分配向量。
对于类型2: n –是向量的大小,而value –是要分配的常数。
返回值: void –在两种情况下均不返回任何内容。
示例
Input: vector<int> v1; vector<int> v2; //分配 v1.assign(5, 100); v2.assign(v1.begin(), v1.end()); Output: //如果我们打印值 v1: 100 100 100 100 100 v2: 100 100 100 100 100
//C ++ STL程序演示示例 //vector :: assign()函数 #include <iostream> #include <vector> using namespace std; int main(){ //声明向量 vector<int> v1; vector<int> v2; vector<int> v3; //用于分配向量的数组 int arr[] = { 10, 20, 30, 40, 50 }; //分配 vectors //分配 v1 with 5 elements and 100 as default value v1.assign(5, 100); //分配 v1 with array v2.assign(arr + 0, arr + 5); //分配 v3 with vector v2 v3.assign(v2.begin(), v2.end()); //插入向量 cout << "v1: "; for (int x : v1) cout << x << " "; cout << endl; cout << "v2: "; for (int x : v2) cout << x << " "; cout << endl; cout << "v3: "; for (int x : v3) cout << x << " "; cout << endl; return 0; }
输出结果
v1: 100 100 100 100 100 v2: 10 20 30 40 50 v3: 10 20 30 40 50
参考:C ++ vector :: assign()