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

相关推荐
王老师青少年编程几秒前
2024年12月GESP真题及题解(C++七级): 燃烧
c++·题解·真题·gesp·csp·七级·燃烧
汉克老师2 分钟前
GESP2025年9月认证C++三级真题与解析(单选题9-15)
c++·算法·数组·string·字符数组·gesp三级·gesp3级
MLGDOU2 分钟前
Chatsdk模型接口的设计
网络·c++
编程大师哥13 分钟前
如何在C++中使用Redis的事务功能?
开发语言·c++·redis
向前V19 分钟前
Flutter for OpenHarmony 二维码扫描App实战 - 关于实现
开发语言·javascript·flutter
朔北之忘 Clancy32 分钟前
第二章 分支结构程序设计(1)
c++·算法·青少年编程·竞赛·教材·考级·讲义
钟离墨笺32 分钟前
Go语言-->interfance{}赋值的陷阱
开发语言·后端·golang
逆境清醒39 分钟前
Python中的常量
开发语言·python·青少年编程
aini_lovee42 分钟前
基于MATLAB的DC-DC变换器设计与实现(Buck/Boost/Buck-Boost)
开发语言·matlab
奔跑吧 android42 分钟前
【ubuntu24.04】【安装jdk】
java·开发语言