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

相关推荐
zmzb0103几秒前
C++课后习题训练记录Day58
开发语言·c++
会员果汁5 分钟前
算法-并查集-C
c语言·开发语言·算法
熊猫钓鱼>_>15 分钟前
基于Trae/Whisper/FFmpeg与Knowledge Graph MCP技术开发语音生成会议纪要智能应用
开发语言·人工智能·python·深度学习·ffmpeg·whisper·trae
七夜zippoe22 分钟前
Python迭代器与生成器深度解析:从原理到协程应用实战
开发语言·python
Sunsets_Red28 分钟前
待修改莫队与普通莫队优化
java·c++·python·学习·算法·数学建模·c#
葡萄城技术团队31 分钟前
在 Java 中优化 MySQL 查询以提升性能
java·开发语言·mysql
Rhys..33 分钟前
js-箭头函数
开发语言·javascript·ecmascript
爱学习的梵高先生34 分钟前
C++:友元
开发语言·c++
资深低代码开发平台专家36 分钟前
厌倦JavaScript 框架桎梏?Still.js:用原生之力,解遗留系统之困
开发语言·javascript·ecmascript
纟 冬39 分钟前
Flutter & OpenHarmony 运动App运动目标设定组件开发
开发语言·javascript·flutter