STL_栈stack容器
程序员文章站
2024-01-19 18:04:46
...
1.栈stack特性
栈stack使用需包含头文件:
#include <stack>
栈,不提供迭代器,不支持遍历,不支持随机存取,只能通过pop()函数,从栈顶逐个删除元素。
2.栈stack构造函数
//stack对象默认构造函数
stack<T> stkT;
//拷贝构造函数
stack(const stack &stk);
3.栈stack赋值操作
//重载等号操作运算符
stack& operator= (const stack &stk);
4.栈stack数据存取操作
//向栈顶添加元素
push(elem);
//从栈顶移除第一个元素
pop();
//返回栈顶元素
top();
5.栈stack大小操作
//判断栈是否为空
empty();
//返回栈的大小
size();
6.栈stack举例
#include <iostream>
#include <stack> //stack需要包含的头文件
using namespace std;
int main()
{
//初始化
stack<int> s1;
stack<int> s2(s1);
//stack操作
s1.push(10);
s1.push(20);
s1.push(30);
s1.push(100);
cout<<"栈顶元素:"<<s1.top()<<endl;
//删除栈顶元素
s1.pop();
//打印栈容器的数据
while(!s1.empty())
{
cout<<s1.top()<<" ";
s1.pop();
}
cout<<endl;
return 0;
}
执行结果:
aaa@qq.com:/home/LinuxShare/007.STL# g++ 01stack.cpp
aaa@qq.com:/home/LinuxShare/007.STL# ./a.out
栈顶元素:100
30 20 10
上一篇: PHP中几种常见的超时处理全面总结