行业知识
【C++杂货铺】详解 stack 和 queue
2026-11-06 20:17:09
来源:互联网转载
前言
欢迎收看本期【C++杂货铺】,本期内容将讲解C++STL中stack和queue的内容,其中包含了stack , queue,priority_queue是什么,怎么使用以及模拟实现这些容器。
此外,还将将讲解设计模式中的适配器模式,以及STL中stack,queue的底层deque。
stack 介绍和使用
介绍
stack是一种容器适配器,专门用于具有先进后出的上下文环境,只能从容器的一端进行元素的插入和提取操作。
stack是作为容器适配器被实现的,容器适配器即是对特定类封装作为其底层的容器,并提供一组特定的成员函数来访问其元素,将特定类作为其底层,元素特定容器的尾部被压入和弹出。
stack的底层容器可以是任何标准的容器类模板或者一些其他特定的容器类,这些容器类应该支持一下操作:
● empty : 判空操作。
● back:获取尾部元素操作。
● push_back:尾部插入元素操作。
● pop_back:尾部删除元素操作。
标准容器vector,deque,list均符合这些需求,默认情况下,如果没有stack指定特定的底层容器,默认情况下使用deque。
使用
stack - C++ Reference (cplusplus.com)
#include #include using namespace std;int main(){ stack st; st.push(1); st.push(2); st.push(3); while(!st.empty()) { cout