STACK学习
- stack的头文件为:
#include <stack>
stack采用模板类实现, stack对象的默认构造形式:
stack <T> stkT; stack <int> stkInt; //一个存放int的stack容器。 stack <float> stkFloat; //一个存放float的stack容器。 stack <string> stkString; //一个存放string的stack容器。
- 功能函数
`bool empty() const;
size_type size() const;
reference top();
const_reference top() const;
void push(const value_type& x);
void push(value_type&& x);
template <class... Args> void emplace(Args&&... args);
void pop();
void swap(stack& c) noexcept(noexcept(swap(c, q.c)));`
这是stack源码中函数的片段。
功能函数有
1,empty()
bool类型,返回当前栈是否为空的真假判断
2,size()
返回容器中元素的个数,int类型
3,top()
返回值为栈顶元素
4,push() 和 emplace()
这两个函数都是在栈顶添加一个元素。
5,pop()
删除最顶部的元素
注意:对一个空栈进行pop(),会导致程序异常终止,应该使用empty提前检查
6,swap()
交换两个栈的内容