C++中stack容器的使用

 更新时间:2023年03月31日 10:08:07   作者:Darren_pty  
本文主要介绍了C++中stack容器的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一、stack容器

1.1 简介

① stack是一种先进后出的容器,它只有一个出口。

② 栈中只有顶端的元素才可以被外界使用,因此栈不允许有遍历行为。

③ 栈中进入数据称为:入栈 push

④ 栈中弹出数据称为:出栈 pop

1.2 常用接口

① 功能描述:栈容器常用的对外接口。

② 构造函数:

stack stk; //stack采用模板类实现,stack对象的默认构造形式
stack(const stack &stk); //拷贝构造函数

③ 赋值操作:

stack& operator=(const stack &stk); //重载等号操作符

④ 数据存取:

push(elem); //向栈顶添加元素
pop(); //从栈顶移除第一个元素
top(); //返回栈顶元素

⑤ 大小操作:

empty(); //判断堆栈是否为空
size(); //返回栈的大小
#include<iostream>
using namespace std;
#include <stack>
 
//栈stack容器
void test01()
{
    //特点:符合先进后出数据结构
    stack<int>s;
 
    //入栈
    s.push(10);
    s.push(20);
    s.push(30);
    s.push(40);
 
    //只要栈不为空,查看栈顶,并且执行出栈操作
    while (!s.empty())
    {
        //查看栈顶元素
        cout << "栈顶元素为:" << s.size() << endl;
 
        //出栈
        s.pop();
    }
    cout << "栈的大小:" << s.size() << endl;
}
 
int main() {
    test01();
 
    system("pause");
 
    return 0;
 
}

运行结果:

栈顶元素为:4
栈顶元素为:3
栈顶元素为:2
栈顶元素为:1
栈的大小:0
请按任意键继续. . .

到此这篇关于C++中stack容器的使用的文章就介绍到这了,更多相关C++ stack容器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C++驱动bash的实现代码

    C++驱动bash的实现代码

    这篇文章主要介绍了C++驱动bash的实现代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-11-11
  • C++实现快捷店会员管理系统

    C++实现快捷店会员管理系统

    这篇文章主要为大家详细介绍了C++实现快捷店会员管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • Ubuntu18.04上安装Qt5.10的步骤实践

    Ubuntu18.04上安装Qt5.10的步骤实践

    Qt是一个跨平台的C++图形用户界面库,本文就介绍了Ubuntu18.04上安装Qt5.10的步骤实践,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • C++超详细梳理IO流操作

    C++超详细梳理IO流操作

    当程序与外界进行信息交换时,存在两个对象,一个是程序中的对象,另一个是文件对象。流是信息流动的一种抽象,它负责在数据的生产者和数据的消费者之间建立联系,并管理数据的流动
    2022-07-07
  • C++利用栈实现中缀表达式转后缀表达式

    C++利用栈实现中缀表达式转后缀表达式

    这篇文章主要为大家详细介绍了C++利用栈实现中缀表达式转后缀表达式,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • 归并排序的递归实现与非递归实现代码

    归并排序的递归实现与非递归实现代码

    以下是对归并排序的递归实现与非递归实现代码进行了详细的介绍,需要的朋友可以过来参考下
    2013-08-08
  • C++实现高校教室管理系统

    C++实现高校教室管理系统

    这篇文章主要为大家详细介绍了C++实现高校教室管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • 基于Matlab实现离散系统分岔图的绘制

    基于Matlab实现离散系统分岔图的绘制

    这篇文章主要介绍了如何利用Matlab实现离散分岔图的绘制,文中的示例代码讲解详细,对我们学习Matlab有一定的帮助,需要的可以参考一下
    2022-04-04
  • 详解C++中普通旧数据(POD)的使用

    详解C++中普通旧数据(POD)的使用

    普通旧数据就是内存中的连续字节序列,是能够被“仅当作数据”处理的对象。这篇文章主要带大家了解一下C++中普通旧数据的定义与使用,感兴趣的可以了解下
    2023-03-03
  • C语言中如何实现桶排序

    C语言中如何实现桶排序

    这篇文章主要介绍了C语言中如何实现桶排序问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11

最新评论