C++中vector

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;
}

程序运行结果
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容