C++STL之stack

1.stack的使用

|-------------|----------------------------------------|
| 函数说明 | 接口说明 |
| stack() | 构造空的栈 |
| empty() | 检测 stack 是否为空 |
| size() | 返回 stack 中元素的个数 |
| top() | 返回栈顶元素的引用 |
| push() | 将元素 val 压入 stack |
| pop() | stack 中尾部的元素弹出 |

2.stack的模拟实现

cpp 复制代码
#include<vector>
namespace abc
{
template<class T>
class stack
{
public:
stack() {
}
void push(const T& x) {
_c.push_back(x);
}
void pop() {
_c.pop_back();
}
T& top() {
return _c.back();
}
const T& top()const {
return _c.back();
}
size_t size()const {
return _c.size();
}
bool empty()const {
return _c.empty();
}
private:
std::vector<T> _c;
};
}

相关推荐
工藤新一¹4 分钟前
C/C++ 数据结构 —— 树(2)
c语言·数据结构·c++·二叉树··c/c++
源远流长jerry14 分钟前
STM32之DMA详解
linux·网络·c++·stm32·单片机·嵌入式硬件
是店小二呀21 分钟前
【C++】智能指针底层原理:引用计数与资源管理机制
android·java·c++
eqwaak01 小时前
科技信息差(8.26)
大数据·开发语言·人工智能·编辑器
FirstFrost --sy2 小时前
map和set的使⽤
c++·set·map
黑客影儿2 小时前
在Godot中为您的游戏添加并控制游戏角色的完整技术指南
开发语言·游戏·游戏引擎·godot·gdscript·游戏开发·3d游戏
不午睡的探索者2 小时前
FFmpeg + WebRTC:音视频开发的两大核心利器
c++·github·音视频开发
愚润求学2 小时前
【贪心算法】day3
c++·算法·leetcode·贪心算法
SimpleUmbrella2 小时前
windows下配置lua环境
c++·lua
yaoxin5211233 小时前
168. Java Lambda 表达式 - 专用比较器
java·开发语言