STL-适配器-Stack

来源:互联网 发布:php入门看什么书 编辑:程序博客网 时间:2024/05/16 09:15

Stack

  • Stack
      • 适配器
      • 头文件
      • 定义元素
      • 初始化操作
      • 成员函数
      • 样例
        • 输出

适配器

适配器就是将容器转换成一个满足设计的要求的容器,比如Stack(栈),就将顺序容器转换成满足FIFO的容器.

除了Stack之外,适配器还有Queue和Priority Queues.


头文件

#include<Stack>

定义元素

stack<class> VerName;

定义的时候也可以指定stack的容器,但没有特殊需求还是按默认来好


初始化操作

函数 功能 stack() 默认的初始化函数 stack(const Container& cntr=Container()) 将顺序容器构造Stack

成员函数

函数 功能 empty() 返回stack是否为空 pop() 删除stack顶部的元素 push(element) 再stack顶部添加元素 size() 返回stack内元素的个数 top() 返回stack栈顶的元素



Tips:
- 一般我们用top()读取元素之后,立即调用pop()删除元素.
- 在调用top()和pop()的时候一定先要检查是否empty().

样例

#include<stack>#include<iostream>using namespace std;int main(){    stack<int>  Stack;    for(int i=1;i<=10;i++)        Stack.push(i);    cout<<"元素个数:"<<Stack.size()<<endl;    while(!Stack.empty())    {      int Temp;      Temp=Stack.top();      Stack.pop();      cout<<"栈顶元素为:"<<Temp<<endl;    }return 0;}

输出

元素个数:10
栈顶元素为:10
栈顶元素为:9
栈顶元素为:8
栈顶元素为:7
栈顶元素为:6
栈顶元素为:5
栈顶元素为:4
栈顶元素为:3
栈顶元素为:2
栈顶元素为:1

0 0
原创粉丝点击