此函数为向量分配新值,并替换旧值。
assign - 语法
考虑要为其分配值的向量v。语法为:
v.assign(first,last); v.assign(n,val);
(first,last) - 它定义范围。first是指向第一个元素的输入迭代器,last是指向过去的last元素的输入迭代器。
n - 出现值的次数。
val - 它定义要分配的值。
assign - 返回值
它不返回任何值。
assign - 例子1
让我们看一个简单的例子。
#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。
assign - 例子2
让我们看另一个简单的例子。
#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"。
assign - 例子3
让我们看一个简单的例子。
#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。