头文件:#include<stack>
stack的定义:
stack<type>s1;
stack<type>s2(s1);
vector<int>v; stack<int,vector<int>>s3(v);
list<int>lst;stack<int,list<int>>s4;
实例:
stack<int>s1;
stack<int>s2(s1);
vector<int>v(3,100);
stack<int, vector<int>>s4(v);
list<int>lst(3, 200);
stack<int, list<int>>s3(lst);
stack的基本操作:
入栈:s.push(val);
出栈:s.pop();//栈的结构决定了只能把栈顶的元素弹出
得到栈顶元素:s.top();
得到栈的大小:s.size();
栈是否为空:s.empty();
实例:
stack<int>s;
s.push(100);
for (int i = 1; i <= 10; i++)
{
s.push(i);
}
cout << s.size() << endl;
cout << s.top() << endl;
s.pop();
if (s.empty())
{
cout << "empty" << endl;
}
else
{
cout << "not empty" << endl;
}