此函数为向量(vector)分配新值,并替换旧值。
要为其分配值的向量(vector)v。语法为:
v.assign(first,last); v.assign(n,val);
(first,last):它定义了范围。将区间(first,last)的元素赋值到当前的vector容器中。
n:出现值的次数。
val:它定义要分配的值。
它不返回任何值。
让我们看一个简单的实例。
#include<iostream> #include<vector> using namespace std; int main() { vector<int> v{1,2,3,4,5}; vector<int> v1; v1.assign(v.begin()+1,v.end()-1); for(int i=0;i<v1.size();i++) std::cout<<v1[i] <<std::endl; return 0; }
输出:
2 3 4
在该示例中,使用assign()函数将包含整数值的向量(vector)v分配给向量(vector)v1。
让我们看另一个简单的实例。
#include<iostream> #include<vector> using namespace std; int main() { vector<char> v; v.assign(5,'C'); for(int i=0;i<v.size();i++) std::cout<< v[i] << " "; return 0; }
输出:
C CCCC
在此示例中,使用assign()函数为v分配了五次“ C”值。
让我们看一个简单的实例。
#include<iostream> #include<vector> using namespace std; int main() { vector<char> v{'C','+','+'}; vector<char> v1; v1.assign(v.begin(),v.end()); for(int i=0;i<v.size();i++) std::cout<< v[i]; return 0; }
输出:
C++
在该示例中,使用assign()函数将包含字符值的向量(vector)v分配给向量(vector)v1。