C++中STL容器的主要使用及含义

2023-05-16

1.stack栈容器的使用

假如栈中存放的是字符串,我们做如下定义:

stack<string> ss;  //设该变量名为ss

其主要用法如下:

ss.push(a);
//存入栈中元素a
ss.top();
//读取栈顶元素
ss.pop();
//弹出栈顶元素
ss.size();
//表示栈中元素的数目
ss.empty();
//判断栈是否为空

stack在使用前一定要加入头文件#include <stack>

2.vector可变数组的使用

vector容器是一个可变数组,假如vector中存放的是整型,我们做如下定义:

vector<int> s; //假设变量为a

其主要用法如下:

s.begin();
//容器中的起始位置
s.end();
//容器中的末尾位置
s.frort();
//容器中第一个关键字
s.push_back(a);
//加入关键字a
s.pop_back();
//弹出最后一个关键字
s.back();
//容器中的最后一个关键字
s.size();
//容器中元素长度

vector在使用前需加入头文件#include <vector>

3.queue队列的使用

假如queue队列中存放的是整型,我们做如下定义:

queue<int> s;  //假设定义s为变量名

其主要用法如下:

s.push(a);
//加入元素a
s.pop();
//弹出队首元素
s.front();
//读取第一个元素
s.size();
//队列中元素长度
s.empty();
//判断是否为空
s.back();
//读取最后一个元素

queue在使用前需要加入头文件#include <queue>

4.map的用法

map是一种类似于映射的数据结构,map中的两个元素是一一对应的。

假如map中存放的是字符串与整型之间的映射,我们做如下定义:

map<string,int> s;  //设s为变量名

第二个元素属于第一个元素所对应的数据,比如前者可以为书号,后者为书名。同时该数据结构有自动排序的功能。

其主要用法如下:

s.insert(pair<string,int>(a,b));
//插入元素
s[a]=b;
//插入元素法2
s.erase(a);
//删除元素a
s.count(a);
//a出现的次数
s.find(a);
//查找a的位置

map在使用前需加入头文件#include <map> 

5.set集合的用法

set是一种集合,与map相比,只表示一个元素,没有映射关系。

我们做如下定义:

set<int> s;  //设s为变量

其主要用法如下:

s.begin();
//容器的首位置
s.end();
//容器末尾位置
s.insert(a);
//插入元素a
s.empty();
//判断是否为空
s.count(a);
//a元素出现的次数
s.size();
//容器中的元素长度
s.clear();
//清空容器
s.find(a);
//a元素所在的位置

set在使用前需要加入头文件#include <set>

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C++中STL容器的主要使用及含义 的相关文章

随机推荐

  • JavaWeb实现简单登录功能

    创建一个web项目 xff0c 配置好Tomcat xff0c java环境 xff0c 并部署到idea中 xff0c 安装好MySQL并导入jar包 mysql connector的jar包 jquery的js包 servlet api
  • telnet是什么

    Telnet是远程连接服务 xff0c 它工作于tcp ip协议的应用层 telnet命令通常用来远程登录 是Internet远程登陆服务的标准协议和主要方式 它为用户提供了在本地计算机上完成远程主机工作的能力 在终端使用者的电脑上使用te
  • 头文件与库文件的区别

    一 头文件与库文件的区别 头文件一般而言 xff0c 是申明和定义 库文件是已经编译好的二进制代码 这个二进制代码可以是动态的 xff0c 如 so xff1b 也可以是静态的 xff0c 如 a 如果是动态的 xff0c 则最后生成的程序
  • C++入门 vector的使用 + 进阶【模拟实现】

    目录 基本接口函数介绍迭代器空间容量增删查改迭代器失效问题探讨 vector模拟实现reserve迭代器空间容量删除insert析构函数vector拷贝构造函数拷贝赋值运算符 基本接口函数介绍 函数名功能vector xff08 重点 xf
  • C++11:继承

    目录 继承的基本概念 继承方式 基类和派生类对象赋值转换 切片 继承中的作用域 派生类的四个成员函数 xff1a 构造函数 拷贝构造函数 赋值重载 析构函数 静态成员 继承与友元 多继承 菱形继承 多继承的指针偏移问题 组合 继承的基本概念
  • socket编程二十六:基于UDP的服务器端和客户端

    前面的文章中我们给出了几个 TCP 的例子 xff0c 对于 UDP 而言 xff0c 只要能理解前面的内容 xff0c 实现并非难事 UDP中的服务器端和客户端没有连接 UDP 不像 TCP xff0c 无需在连接状态下交换数据 xff0
  • 下载高清电影的必须收藏的网站

    下载高清电影的必须收藏的网站 Posted 2012 12 06 分类 生活范儿 电影 生活范儿 电影 CHD 虽然蓝光推出 xff0c 但是高清已经势不可挡 xff0c 动辄几G甚至几十G一部的电影冲击着我们的视觉 xff0c 也考验着我
  • 电赛总结|电赛注意事项

    电赛总结 赛前 1 准备模块非常重要 如果没有提前准备模块 xff0c 在赛中也是在想尽办法买模块 xff0c 只是花更多的钱和运费等 xff0c 也不会去自己搭 所以赛前一定要准备模块 常见模块 降压模块 xff0c 升压稳压模块 xff
  • Putty使用教程

    Putty作为免费且开源的老牌 SSH 客户端 xff0c PuTTY 经常用于 Windows 下连接管理远程服务器 为方便刚接触 VPS 的新手参考使用 xff0c 本文配合截图介绍 PuTTY 的基础用法及一些设置技巧 xff0c 希
  • #Python实现话题的发布与订阅

    Python实现话题的发布与订阅 首先我们的先了解ROS文件系统的基本框架 xff0c 如下图所示 xff1a 由上图可知 xff0c py文件放在工作包里面的scripts文件夹内 xff0c 所以 xff0c 整活 xff01 1 在工
  • #创建自定义topic

    创建自定义topic 前面我们学了用C 43 43 和Python创建发布者与订阅者 xff0c 这次我们创建自定义的话题 xff0c 其实同C 43 43 实现topic差不多 xff0c 都是编写 cpp文件 步骤有点多且繁琐 xff0
  • #使用TF实现海龟机器人跟随

    使用TF实现海龟机器人跟随 昨天粗略地讲解了一会儿TF变换 xff0c 用的是ROS系统中自带的功能包实现小海龟跟随的功能 xff08 具体见 初识TF变换 xff09 今天我们将用自己编写节点的方式实现小海龟跟随的功能 xff0c 并且
  • #创建虚拟机器人URDF模型

    创建虚拟机器人URDF模型 题外话 xff1a 作业发布已有一两天了 xff0c 之所以今天才编辑这篇博客 xff0c 是因为我也遇到问题了 xff0c 现在以及解决了 xff08 小细节 xff1a 创建功能包之前先编译工作空间确保里面已
  • # gazebo 仿真

    gazebo 仿真 1 给 base link 添加惯性 xff0c 碰撞以及 gazebo 属性 在路径xqrobot description urdf xacro 件夹下新建 件夹 gazebo xff0c 并在 gazebo 件下创建
  • #Gmapping

    Gmapping 开始之前先安装两个功能包 xff0c 命令如下 xff1a sudo apt span class token operator span get install ros span class token operator
  • #navigation

    navigation 1 安装相关依赖 sudo apt span class token operator span get install ros span class token operator span kinetic span
  • # Qt_day1

    Qt day1 1 项目框架 span class token macro property span class token directive hash span span class token directive keyword i
  • ros先订阅后发布 无法收到消息的解决办法

    现象 今天遇到的问题是 使用的是Ros1 在先订阅后发布时 会导致订阅者无法收到订阅的消息 除非在发布者发布后重新订阅 思考 以前使用的是Ros2似乎并不关心订阅和发布的先后顺序 nbsp 似乎都可以收到消息 nbsp nbsp 这个问题后
  • C/C++中关于struct和class类的区别

    struct和class的主要的区别在于两者默认的访问权限有所不同 在不设置类中的成员属性和成员方法的权限时 xff0c struct默认的访问权限是公共权限 xff0c class默认的访问权限是私有权限 补充 xff1a 成员属性和成员
  • C++中STL容器的主要使用及含义

    1 stack栈容器的使用 假如栈中存放的是字符串 xff0c 我们做如下定义 xff1a stack lt string gt ss 设该变量名为ss 其主要用法如下 xff1a ss push a 存入栈中元素a ss top 读取栈顶