28STL之Stack
来源:互联网 发布:淘宝卖家如何做好运营 编辑:程序博客网 时间:2024/06/18 11:31
STL之Stack
- STL之Stack
- 简介
- stack对象的默认构造
- stack的push与pop方法
- 对象的拷贝构造与赋值
- 数据存取
- stack的大小
1.简介
- stack是堆栈容器,是一种“先进后出”的容器。
- stack是简单地装饰deque容器而成为另外的一种容器。
#include <stack>
2.stack对象的默认构造
stack采用模板类实现, stack对象的默认构造形式: stack <T> stkT;
stack <int> stkInt; //一个存放int的stack容器。stack <float> stkFloat; //一个存放float的stack容器。stack <string> stkString; //一个存放string的stack容器。... //尖括号内还可以设置指针类型或自定义类型。
3.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
4.对象的拷贝构造与赋值
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;
5.数据存取
stack.top(); //返回最后一个压入栈元素stack<int> stkIntA;stkIntA.push(1);stkIntA.push(3);stkIntA.push(5);stkIntA.push(7);stkIntA.push(9);int iTop = stkIntA.top(); //9stkIntA.top() = 19; //19
6.stack的大小
stack.empty(); //判断堆栈是否为空stack.size(); //返回堆栈的大小
stack<int> stkIntA;stkIntA.push(1);stkIntA.push(3);stkIntA.push(5);stkIntA.push(7);stkIntA.push(9);if (!stkIntA.empty()){ int iSize = stkIntA.size(); //5}
stack不可以像遍历vector和deque一样用迭代器或者数组下标以及at成员函数随即访问stack里面的元素。
阅读全文
0 0
- 28STL之Stack
- STL容器之stack
- STL容器之stack
- C++ STL 之stack
- STL之stack
- STL 之 stack - queue
- STL之stack(栈)
- STL 之 stack
- STL 之 stack
- STL之stack
- STL之stack、queue
- STL 之 stack
- STL之stack
- STL学习之stack
- stl之stack
- stl之stack容器
- C++ STL之stack
- STL之Stack,Queue
- 重写equals方法和hashcode(集合需要重写)
- [C++ Primer CH01]第1章 开始
- Matlab 标定工具箱使用教程
- 获取线程标识函数gettid和pthread_self的区别
- 第3章 装配Bean---高级装配--笔记2
- 28STL之Stack
- Swift 中的关键字2
- Docker
- Leetcode 17 Letter Combinations of a Phone Number
- osip的一些知识
- App移动端项目管理
- centos6.9安装mysql5.7
- 16、Android 生成.so文件
- RobotStudio仿真—工作站逻辑