一、stack容器的基本概念
概念:stack容器是一种先进后出的数据结构,只有一个进出口
栈中只有顶部的数据才可以被外界访问,因此,栈不允许有遍历的行为
栈中进入数据称为-------入栈(push)
栈中出数据称为-------出栈(pop)
二、stack容器的常用接口
构造函数:
stack<T> stk; //stack采用模板类实现,默认构造形式
stack(const stack &stk) //拷贝构造
赋值操作:
stack operator=(const stack &stk) //重载等号操作符
数据存取:
push(elem) //向栈顶添加元素
pop(); //移除栈顶的第一个元素
top(); //获取栈顶的元素
大小操作:
empty(); //判断栈是否为空
size(); //返回栈的大小
示例:
#include "iostream"
#include <stacK>
using namespace std;
void tset01()
{
stack<int> stk; //默认构造形式
//1、入栈
stk.push(10);
stk.push(20);
stk.push(30);
stk.push(40);
//2、访问栈顶元素
cout << "栈顶元素为:" << stk.top() << endl;
//3、访问栈的大小
cout << "栈的大小:" << stk.size() << endl;
//4、stack的拷贝构造
stack<int> s2(stk);
//stack的等号赋值操作
stack<int> s3;
s3 = stk;
//3、判断栈是否为空,不为空,则输出栈顶数据
while (!stk.empty())
{
cout << stk.top() << endl;
stk.pop();
}
}
int main()
{
tset01();
system("pause");
return 0;
}