stack简介
1.后进先出。
2.是利用vector,deque,list实现的适配器。
#include<stack>
using namespace std;
一.构造类函数
缺省构造函数、拷贝构造函数、运算符构造函数
#include<iostream>
#include<stack>
using namespace std;
int main()
{
stack<int> s1;//构造函数
s1.push(1);s1.push(2);s1.push(5);
stack<int> s2(s1);
stack<int> s3=s2;
cout<<s3.top();
}
二.存取类函数
pop()//返回stack中的栈顶元素
三.容器类函数
empty()//如果stack容器为空返回true;否则,返回false。
size()//返回stack容器中元素个数
int main()
{
stack<int> s1;//构造函数
s1.push(1);s1.push(2);s1.push(3);
stack<int> s2(s1);//复制构造函数
if(s1.empty())
cout <<"s1为空"<<endl;
else
cout<<"s1非空"<<endl;
cout<<s2.size()<<endl;
}
【运行结果】
s1为空
3
操作类函数
push(x)//将x元素入栈,实际上利用顺序容器的push_back()函数实现的
pop()//将栈顶元素出栈
#include<iostream>
#include<stack>
using namespace std;
int main()
{
stack<int> s;
for(int i=0;i<5;i++)
{
s.push(i);
}
while(!s.empty())
{
cout<<s.top()<<" ";
s.pop();
}
}
【运行结果】
4 3 2 1 0