STL stack 容器

Stack简介

stack是堆栈容器,是一种“先进后出”的容器。
      stack是简单地装饰deque容器而成为另外的一种容器
      #include <stack>

stack对象的默认构造

stack采用模板类实现,
         stack对象的默认构造形式:
         stack <T> stkT;

示例:

stack <int> stkInt;
//一个存放int的stack容器。

stack <float> stkFloat;
//一个存放float的stack容器。

stack <string> stkString;
//一个存放string的stack容器。

...
//尖括号内还可以设置指针类型或自定义类型。

stack对象的拷贝构造与赋值

理论知识:

stack(const stack &stk)
拷贝构造函数

stack& operator=(const stack &stk)
重载等号操作符

示例:

stack<int> stkIntA;
stkIntA.push(1);
stkIntA.push(3);
stkIntA.push(5);
stkIntA.push(7);
stkIntA.push(9);
stack<int> stkIntB(stkIntA); //拷贝构造
stack<int> stkIntC;
stkIntC = stkIntA; //赋值

stack的push()与pop()方法

理论知识:

stack.push(elem) 往栈头添加元素

stack.pop()   从栈头移除第一个元素

示例:

stack<int> stkInt;
stkInt.push(1);
stkInt.push(3);
stkInt.pop();
stkInt.push(5);
stkInt.push(7);
stkInt.push(9);
stkInt.pop();
stkInt.pop(); 此时stkInt存放的元素是1,5

stack的数据存取

理论知识:

stack.top()
返回最后一个压入栈元素

示例:

stack<int> stkIntA;
stkIntA.push(1);
stkIntA.push(3);
stkIntA.push(5);
stkIntA.push(7);
stkIntA.push(9);
int iTop = stkIntA.top(); //9
stkIntA.top() = 19; //19

stack的大小

理论知识:

stack.empty()
判断堆栈是否为空

stack.size()
返回堆栈的大小

 

示例:

stack<int>
stkIntA;
stkIntA.push(1);
stkIntA.push(3);
stkIntA.push(5);
stkIntA.push(7);
tkIntA.push(9);
if (!stkIntA.empty())
{
      int iSize = stkIntA.size(); //5
}

STL stack 容器相关推荐

  1. [C++STL]stack容器用法介绍

  2. C++STL的stack容器

    C++STL的stack容器 stack 基本概念 stack 常用接口 stack 基本概念 概念:stack是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口 ...

  3. c++ stl栈容器stack用法介绍

    stack堆栈容器 堆栈是一个线性表,插入和删除只在表的一端进行.这一端称为栈顶(Stack Top),另一端则为栈底(Stack Bottom).堆栈的元素插入称为入栈,元素的删除称为出栈.由于元素 ...

  4. STL之容器stack

    目录 栈的底层实现原理 1. stack定义和初始化 2.stack的赋值 3. stack进栈和出栈 4. stack判空和大小 5. 注意事项(附加) 欢迎关注微信公众号 "三贝勒文子& ...

  5. 【C++】 STL库的stack容器

    STL库的stack容器 1.构造函数 2.增 2.1 push() 2.2 emplace() 两者区别 3.删 pop() 4.改 4.1 swap()交换 5.查 top() 6.判空 empt ...

  6. c++ stl stack(FILO,容器配接器)

    1.stack stack是一种先进后出的数据结构,它只有一个出口.stack允许新增元素.移除元素.取得最顶元素.但除了最顶端外,没有任何其他方法可以存取stack的其他元素.换言之,stack不允 ...

  7. STL之stack容器

    1.stack容器 1) stack是堆栈容器,是一种"先进后出"的容器. 2)stack是简单地装饰deque容器而成为另外的一种容器. 3)头文件.#include <s ...

  8. 容器删除元素后迭代器失效_STL 4: STL之容器:选择时机,删除元素,迭代器失效...

    一. 种类: 标准STL序列容器:vector.string.deque和list. 标准STL关联容器:set.multiset.map和multimap. 非标准序列容器slist和rope.sl ...

  9. [C++ STL] 各容器简单介绍

    [C++ STL] 各容器简单介绍 目录 一.什么是STL? 二.容器(Containers) 2.1 vector 2.2 deque 2.3 list 2.4 set 2.5 map 2.6 容器 ...

最新文章

  1. 智源青年科学家梁云:异构系统中张量计算的自动调度和优化框架
  2. 收藏!机器学习算法分类图谱及其优缺点综合分析
  3. android自动创建桌面,Android应用启动后自动创建桌面快捷方式的实现方法
  4. Python中metaclass解释
  5. tomcat的安装和部署项目
  6. linux 批量下载图片,Python + Excel 实现图片批量下载
  7. VTK:功能袋图用法实战
  8. 分块内存映射处理大文件-例子
  9. Android 切换卡(TabWidget)
  10. 在Linux中怎么把用户添加到组中
  11. C语言基础知识【作用域规则】
  12. 风控中英文术语手册(银行_消费金融信贷业务)_v4
  13. 变频器按启动没反应_变频器按运行键电动机不转故障怎样维修
  14. html文本框怎么写表情,HTML实现输入框内插入QQ表情
  15. 跨语言词向量笔记2. 跨语言词向量表示简史
  16. Ribbon的基本使用
  17. 网件rax40可以刷梅林_Netgear 网件 RAX40 AX3000规格 无线路由器 开箱拆解评测
  18. android虚拟机共享文件夹在哪里打开,【已解决】Nox夜神安卓模拟器中/mnt/shared对应Mac的共享目录在哪里...
  19. 2018上期Android学期总结
  20. 赛前采访里皮表示:希望队员用真心踢球。

热门文章

  1. 关于(我们流量表优化),分区表数据块过多,聚合又导致数据倾斜问题
  2. 【NOIp2002】矩形覆盖
  3. Java EE中的重新验证(java.util.regex.Pattern)
  4. 003-神经网络基础-最优化,前向传播,反向传播
  5. 使用Angular2建立项目
  6. (二)stm32之中断配置
  7. CGRect包含交错,边缘,中心的检测
  8. 诗与远方:无题(二十二)
  9. 排序 -> 选择排序
  10. zanli_android_1.1.0,【轻松集赞】写了个涉嫌混淆微信官方服务的小程序