C++ stack基本函数使用方法

6 篇文章 0 订阅

stack 是容器适配器的一种。要使用 stack,必须包含头文件 <stack>。

stack就是“栈”。栈是一种后进先出的元素序列,访问和删除都只能对栈顶的元素(即最后一个被加入栈的元素)进行,并且元素也只能被添加到栈顶。栈内的元素不能访问。如果一定要访问栈内的元素,只能将其上方的元素全部从栈中删除,使之变成栈顶元素才可以。

stack的定义如下:

template < class T, class Cont == deque <T> >
class stack{
    ...
};

第二个参数表明,在默认情况下,stack 就是用 deque 实现的。当然,也可以指定用 vector 或 list 实现。

虽然 stack 使用顺序容器实现,但它不提供顺序容器具有的成员函数。变量命名方式为:

stack<int> c; //声明了一个int类型的栈变量

1.   弹出(即删除)栈顶元素

void pop();   
c.pop(); //删除栈顶元素

2.   在栈顶插入一个元素

void push(const value_type& val)   
c.push(value);//在栈顶插入元素value

3.   返回栈顶元素

value_type& top();    

const value_type &top() const;    
c.top(); //返回栈顶元素

4.   判断栈是否为空,空返回true,不空返回false

bool empty() const  
stack<int> c; //定义一个int类型的栈
c.empty(); //栈空返回true,否则返回false

5.  返回栈中元素数量

size_type size() const   
c.size();

6.   在栈顶增加一个元素

void emplace(args&& args);
c.emplace(value);

7.   交换两个栈中的内容

void swap (stack& x);
c.swap(d);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值