此函數(shù)為向量(vector)分配新值,并替換舊值。
要為其分配值的向量(vector)v。語(yǔ)法為:
v.assign(first,last); v.assign(n,val);
(first,last):它定義了范圍。將區(qū)間(first,last)的元素賦值到當(dāng)前的vector容器中。
n:出現(xiàn)值的次數(shù)。
val:它定義要分配的值。
它不返回任何值。
讓我們看一個(gè)簡(jiǎn)單的實(shí)例。
#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()函數(shù)將包含整數(shù)值的向量(vector)v分配給向量(vector)v1。
讓我們看另一個(gè)簡(jiǎn)單的實(shí)例。
#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()函數(shù)為v分配了五次“ C”值。
讓我們看一個(gè)簡(jiǎn)單的實(shí)例。
#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()函數(shù)將包含字符值的向量(vector)v分配給向量(vector)v1。