c++

stack c++用法是什么

小亿
86
2024-11-22 10:14:01
栏目: 编程语言

stack 是 C++ 标准库中的一个容器适配器,它提供了后进先出(LIFO, Last In First Out)的数据结构实现。stack 底层通常使用 deque(双端队列)作为实现。

以下是 stack 的一些基本用法:

  1. 包含头文件:
#include <stack>
  1. 创建一个空的 stack 对象:
std::stack<int> s;
  1. stack 中压入元素:
s.push(1);
s.push(2);
s.push(3);
  1. stack 中弹出元素:
int top_element = s.top(); // 获取栈顶元素,但不弹出
s.pop(); // 弹出栈顶元素
  1. 检查 stack 是否为空:
if (!s.empty()) {
    // 栈非空
} else {
    // 栈为空
}
  1. 获取 stack 的大小:
std::size_t size = s.size();
  1. 使用范围 for 循环遍历 stack(不推荐,因为 stack 不支持随机访问):
for (auto it = s.begin(); it != s.end(); ++it) {
    std::cout << *it << " ";
}

注意:stack 不支持迭代器解引用操作(如 *it)和 stack.at() 方法,因为它们不提供随机访问。

0
看了该问题的人还看了