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

相关推荐
hd51cc1 分钟前
MFC运行时
开发语言·mfc
FMRbpm3 分钟前
用队列实现栈
数据结构·c++·新手入门
wniuniu_4 分钟前
ceph一些细节处理
开发语言·ceph
hd51cc4 分钟前
异常处理(Exception Handling)
开发语言
SadSunset7 分钟前
(19)Bean的循环依赖问题
java·开发语言·前端
JIngJaneIL10 分钟前
基于Java+ vue图书管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
Wpa.wk25 分钟前
自动化测试-鼠标+键盘操作 - Actions高级控件
java·开发语言·测试工具·自动化·计算机外设·actions·高级控件
一水鉴天32 分钟前
整体设计 定稿 之25 重构和改造现有程序结构 之1 (codebuddy)
开发语言·人工智能·重构
g***B73833 分钟前
Java 的第三次跃迁:从企业级语言走向智能时代的通用计算引擎
java·开发语言
lly20240636 分钟前
Maven 构建配置文件
开发语言