vector 的初始化
#include<iostream>
#include<vector>
using namespace std;
//vector的初始化
int main()
{
vector<int> vec1;
vector<float> vec2(3);
vector<char> vec3(3,'a');
vector<char> vec4(vec3);
return 0 ;
}
- 第一个是空的整形vector,我们没有给他添加任何元素。
- 第二个初始化了一个有3个元素的vector,由于并没有指定初始 值,将会使用编译器默认的初始值(0)。
- 第三个初始化了含有3个a的字符vector,括号中第二个值代表着所有元素的指定值。
- 第四个vector通过拷贝vec3中的元素初始化vec4,它们的元素会一模一样。
获取长度
vec1.size()
添加元素
vec1.push_back(1)
or vec1[i] = 1
push_back()每次会添加一个元素到vector的末尾
判断是否为空
vec1.empty()
移除元素
vec1.pop_back();
如果vector为空,使用pop_back()将会产生异常结果,因此需要empty()来确定vector不为空。
vector相等判断与赋值
#include<iostream>
#include<vector>
using namespace std;
//vector相等判断与赋值
int main()
{
vector<int> vec1(3,2);
vector<int> vec2;
if (vec1 == vec2)
{
cout << "vec1与vec2相等" << endl;
}
vec2 = vec1;
cout << "赋值后" << endl;
if (vec1 == vec2)
{
cout << "vec1与vec2相等" << endl;
}
return 0 ;
}
//赋值后
//vec1与vec2相等
vector的赋值会把一个vector所有的元素赋值到另一个vector中,并替代所有元素;而vector的相等也是需要逐个元素依次比较并全部相等才算相等。