C++ vector assign() 使用方法及示例

C++ Vector(容器)

此函数为向量(vector)分配新值,并替换旧值。

语法

要为其分配值的向量(vector)v。语法为:

v.assign(first,last);
v.assign(n,val);

参数

(first,last):它定义了范围。将区间(first,last)的元素赋值到当前的vector容器中。

n:出现值的次数。

val:它定义要分配的值。

返回值

它不返回任何值。

实例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()函数将包含整数值的向量(vector)v分配给向量(vector)v1。

实例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”值。

实例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()函数将包含字符值的向量(vector)v分配给向量(vector)v1。

C++ Vector(容器)