此函数为向量分配新值,并替换旧值。
考虑要为其分配值的向量v。语法为:
v.assign(first,last); v.assign(n,val);
(first,last) - 它定义范围。first是指向第一个元素的输入迭代器,last是指向过去的last元素的输入迭代器。
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()函数将包含整数值的向量v分配给向量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()函数将包含字符值的向量v分配给向量v1。
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)