vector基础函数操作
1.push_back 在容器的最后添加一个数据
2.pop_back 删除容器的最后一个数据
3.size 当前容器内数据的个数
4.begin 得到容器起始数据位置
5.end 得到容器最后数据位置
6.reserve 改变当前容器所分配空间的大小
7.erase 删除指定的数据项
8.clear 清空当前的容器
9.empty 判断容器是否为空
// 将容器操作理解为栈的操作
//
#include "pch.h"
#include <iostream>
#include<string>
#include<vector>
using namespace std;
void main()
{
vector<string> vec;//定义一个容器,名为vec,容器中所存每个元素类型为string类型
string str;
str = "第一次";
vec.push_back(str);//存入容器,相当于入栈
vec.push_back("第二次");//存入容器,相当于入栈
vec.push_back("第三次");//存入容器,相当于入栈
vec.insert(vec.begin()+2,"第二次和第三次之间插入新值");
//相当于vec.insert(vec.end(),"功能相当于vec.push_back("最后添加");");
vec.insert(vec.begin(),3, "第一次前插入3个新值");//在第一次前插入3次“第一次前插入3个新值”
for (int i = 0; i < vec.size(); i++)
{
cout << vec[i] << endl;//打印容器内每个string类型的值
}
cout << vec.size() << endl;//打印容器内string类型的元素个数
cout << "" << endl;
cout << "打印翻转后的容器:" << endl;
reverse(vec.begin(),vec.end());//翻转任意段元素
//打印翻转后的容器
for (int i = 0; i < vec.size(); i++)
{
cout << vec[i] << endl;
}
cout << "" << endl;
vec.pop_back();//将最后入栈的值进行出栈
for (int i = 0; i < vec.size(); i++)
{
cout << vec[i] << endl;
}
cout << "" << endl;
vec.erase(vec.begin() + 4, vec.begin() + 6);//可删除指定区间内的元素,即这里把"第二次和第三次之间插入新值"删除
// vec.erase(vec.begin() + 5);功能同上句
cout << vec.empty() << endl;//判断容器是否为空,如果为空,返回1,否则返回0
cout << vec.size() << endl;//容器大小,即所存string类型元素的个数,和每个string的大小无关
vec.resize(10);//重新设置该容器大小,设置为10
cout << vec.size() << endl;
vec.clear();//清空容器
cout << vec.empty() << endl;
}
程序运行结果