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

相关推荐
secret_to_me1 分钟前
裴行俭VS袁天罡和李淳风
开发语言
2601_953465611 分钟前
M3U8 在线播放器:无需安装,一键调试 HLS 直播流
开发语言·前端·javascript·开发工具·m3u8·m3u8在线播放
郭涤生9 分钟前
C++ 线程同步复习
开发语言·c++
Full Stack Developme11 分钟前
Hutool EnumUtil 教程
开发语言·windows·python
XMYX-014 分钟前
18 - Go 等待协程:WaitGroup 使用与坑
开发语言·golang
feifeigo12317 分钟前
基于遗传算法的矩形排样MATLAB实现
开发语言·matlab
他是龙55120 分钟前
65:JS安全&浏览器插件&工具箱等
开发语言·javascript·安全
csbysj202021 分钟前
Rust 输出到命令行
开发语言
likerhood24 分钟前
Java 中的 `clone()` 与 `Cloneable` 接口详解
java·开发语言·python
Adellle30 分钟前
Java 异步回调
java·开发语言·多线程