栈是一种后进先出的元素序列,访问和删除都只能对栈顶的元素(即最后一个被加入栈的元素)进行,并且元素也只能被添加到栈顶。栈内的元素不能访问。如果一定要访问栈内的元素,只能将其上方的元素全部从栈中删除,使之变成栈顶元素才可以。
stack的模板
template < class T, class Cont == deque <T> >
class stack{
...
};
第二个参数指定实现的类型,默认是deque双端队列,也可以是vector或 list
成员函数
size()
empty()
void pop(); //弹出(即删除)栈顶元素
T & top(); //返回栈顶元素的引用。通过此函数可以读取栈顶元素的值,也可以修改栈顶元素
void push (const T & x); //将 x 压入栈顶