【C/C++入门攻略】C++标准模板库(STL)用法介绍:stack

C++标准模板库(STL)用法介绍:stack

stack:栈,在STL中主要则是实现了一个后进先出的容器。

使用stack前需要添加:

#include <stack>

using namespace std;

1. stack声明

stack是一个模板类,所以使用前需要声明。

声明

stack<typename> st;

typename可以是任何基本类型,也可以是STL标准容器

2. stack访问

由于栈本身就是一种后进先出的限制性数据结构,因此在STL中只能通过top()来访问栈顶元素

printf("%d", st.top());

3. stack常用函数

(1) push()

st.push(x)用来将x送入栈

(2) top()

st.top()用来获得栈顶元素

(3) pop()

st.pop()用来令栈顶元素弹出

(4) empty()

st.empty()用来检测栈是否为空,空则返回true,否则返回false

注:使用st.top()之前,必须用empty()判断栈是否为空,否则可能因为栈空出错

(5) size()

st.size()用来返回栈内元素的个数

4. stack用途

模拟实现一些递归

一般来说,程序的栈内存很小,如果递归程序的层数过深,容易导致程序崩溃。使用栈来模拟递归算法的实现,可以防止程序对栈内存的限制而导致运行出错(这种应用较少)


欢迎访问我的STL系列:

C++标准模板库(STL)用法介绍:目录

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值