C++学习 --stack
目录
1, 什么是stack
2, 创建stack
2-1, 标准数据类型
2-2, 自定义数据类型
2-3, 其他创建方式
3, 操作stack
3-1, 赋值
3-2, 插入元素(push)
3-3, 查询元素
3-4, 删除元素
3-5, 判断是否为空
3-6, 交换
3-7, 获取长度
1, 什么是stack
C++中的容器数据类型, 叫着栈容器, 元素是先进后出, 只有顶部元素支持操作,所以不支持遍历
2, 创建stack
通过stack<数据类型> 对象名, 可创建stack, 数据类型可以是标准数据类型, 也可以是自定义类型
2-1, 标准数据类型
//stack中元素数据类型为string
stack<string> s1;
2-2, 自定义数据类型
//stack中元素的数据类型为Myclass
stack<Myclass> s1;
2-3, 其他创建方式
stack<Myclass> s1;
//通过拷贝构造方式, 将一个已存在的s1, 拷贝给s2
stack<Myclass> s2(s1);
3, 操作stack
3-1, 赋值
由于stack是一个容器, 只支持将一个stack赋值给另外一个stack
stack<Myclass> s2 = s1;
3-2, 插入元素(push)
通过对象名.push(元素), 向stack中插入元素
Myclass m1("aaa", 1);
Myclass m2("bbb", 2);
Myclass m3("ccc", 3);
stack<Myclass> s1;
s1.push(m1);
s1.push(m2);
s1.push(m3);
3-3, 查询元素
通过对象名.top(), 获取栈顶元素
Myclass m1("aaa", 1);
Myclass m2("bbb", 2);
Myclass m3("ccc", 3);
stack<Myclass> s1;
s1.push(m1);
s1.push(m2);
s1.push(m3);
cout << s1.top().m_name << endl;
cout << s1.top().m_age << endl;
3-4, 删除元素
通过对象名.pop(), 删除栈顶元素
s1.pop();
3-5, 判断是否为空
可通过对象名.empty(), 判断栈是否为空, 为空返回0, 不为空返回1
cout << s1.empty() << endl;
3-6, 交换
可通过对象名1.swap(对象名2), 交换两个栈的元素
s1.swap(s2);
3-7, 获取长度
可通过s1.size(), 删除栈顶元素
cout << s1.size() << endl;
相关文章:
C++学习 --stack
目录 1, 什么是stack 2, 创建stack 2-1, 标准数据类型 2-2, 自定义数据类型 2-3, 其他创建方式 3, 操作stack 3-1, 赋值 3-2, 插入元素(push) 3-3, 查询元素 3…...
简单但好用:4种Selenium截图方法了解一下!
前言 我们执行UI自动化操作时,大多数时间都是不在现场的,出现错误时,没有办法第一时间查看到,这时我们可以通过截图当时出错的场景保存下来,后面进行查看报错的原因,Selenium中提供了几种截图的方法&#x…...
【报错记录】解决使用Kotlin写的SpringBoot项目使用Aspect切面无法生效的问题
前言 为了能在SpringBoot使用Kotlin,真的是各种坑都彩礼一遍,这次遇到的问题是Aspect无法对Kotlin代码生效。我这里的使用场景是使用切面切Controller中的方法,用来对接口进行一些初始化和收尾工作。 Aspect在Controller类还是Java代码的时…...
在python中分别利用numpy,tensorflow,pytorch实现数据的增加维度(升维),减少维度(降维)
文章目录 前言一、使用numpy实现升维度,降维度二、使用TensorFlow实现升维度,降维度三、使用PyTorch实现升维度,降维度总结 前言 我们明确一下升维和降维的概念: 升维(Dimensionality Augmentation)&…...
基于天鹰算法优化概率神经网络PNN的分类预测 - 附代码
基于天鹰算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于天鹰算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于天鹰优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要:针对PNN神经网络的光滑…...
Flutter的Event Loop
Flutter 的事件循环机制是其框架的核心部分,它负责管理事件的处理和UI的渲染。了解这个机制对于开发高效且响应迅速的Flutter应用非常重要。以下是Flutter事件循环的主要组成部分和工作原理: 1. 主事件循环(Main Event Loop) 当…...
HarmonyOS ArkTSTabs组件的使用(六)
Tabs组件的使用 ArkUI开发框架提供了一种页签容器组件Tabs,开发者通过Tabs组件可以很容易的实现内容视图的切换。页签容器Tabs的形式多种多样,不同的页面设计页签不一样,可以把页签设置在底部、顶部或者侧边。 Tabs组件的简单使用 Tabs组件…...
【MetaLearning】有关Pytorch的元学习库higher的基本用法
【MetaLearning】有关Pytorch的元学习库higher的基本用法 文章目录 【MetaLearning】有关Pytorch的元学习库higher的基本用法1. 基本介绍2. Toy ExampleReference 1. 基本介绍 higher.innerloop_ctx是higher库的上下文管理器,用于创建内部循环(inner lo…...
火山引擎 ByteHouse 的增强型数据导入技术实践
作为企业数字化建设的必备要素,易用的数据引擎能帮助企业提升数据使用效率,更好提升数据应用价值,夯实数字化建设基础。 数据导入是衡量OLAP引擎性能及易用性的重要标准之一,高效的数据导入能力能够加速数据实时处理和分析的效率。…...
依赖库:Ceres-solver-2.0.0安装
依赖库:Ceres-solver-2.0.0安装 前言安装ceres-solver-2.0.0验证 前言 Ceres Solver是谷歌开源的C非线性优化库,能够解决有约束或无约束条件下的非线性最小二乘问题。2010年之后大量的运用在谷歌的产品开发中,尤其在谷歌开源的cartographer中…...
LeSS敏捷框架高效生产力实践
每个团队可能都有一套适合自己的敏捷方法,本文介绍了ResponseTap工程团队通过采用LeSS框架、引入准备周,从而提升迭代冲刺研发效能的实践。原文: LeSS Agile, More Productive — Part 1: Pain[1], LeSS Agile, More Productive — Part 2: Promise, LeS…...
matlab绘图函数plot和fplot的区别
一、背景 有的函数用plot画就会报错,显示数据必须为可转换为双精度值的数值、日期时间、持续时间、分类或数组。 如下图所示: 但用fplot函数就没有问题,因此这里记录一下两者的区别,如果使用不当,画出的图可能就是下…...
场景交互与场景漫游-对象选取(8-2)
对象选取示例的代码如程序清单8-11所示: /******************************************* 对象选取示例 *************************************/ // 对象选取事件处理器 class PickHandler :public osgGA::GUIEventHandler { public:PickHandler() :_mx(0.0f), _my…...
模拟Spring源码思想,手写源码,理解注解
1、BeanDefinition package com.csdn.myspring; import lombok.AllArgsConstructor; import lombok.Data; Data AllArgsConstructor public class BeanDefinition {private String beanName;private Class beanClass; }2、扫描包的工具类MyTools package com.csdn.myspring; im…...
各种LLM数据集包括SFT数据集
各种LLM数据集包括SFT数据集 数集介绍和 hf上的名字对话数据生成方法交通领域数据集SFT 的解释数集介绍和 hf上的名字 通用预训练数据集 SFT datasets SFT 数据集 50万条中文ChatGPT指令Belle数据集:BelleGroup/train_0.5M_CN 100万条中文ChatGPT指令Belle数据集:BelleGrou…...
Sleuth
Sleuth 一 引言 随着服务的越来越多,对调⽤链的分析会越来越复杂。它们之间的调⽤关系也许如下图: 问题: 1:微服务之间的调⽤错综复杂,⽤户发送的请求经历那些服务,调⽤链不清楚,没有⼀ 个⾃…...
新手必看!!附源码!!STM32通用定时器输出PWM
一、什么是PWM? PWM(脉冲宽度调制)是一种用于控制电子设备的技术。它通过调整信号的脉冲宽度来控制电压的平均值。PWM常用于调节电机速度、控制LED亮度、产生模拟信号等应用。 二、PWM的原理 PWM的基本原理是通过以一定频率产生的脉冲信号࿰…...
静态文件鉴权
静态文件鉴权的解决方案 背景介绍 XX业务系统作为BXX业务系统的孪生姐妹系统,是对BXX受理业务的强力补充系统,他允许操作员拿着IPAD,和客户约定地点上门受理业务。 因一些业务的受理,按照最新的业务规章制度,需…...
计算机视觉与机器学习D1
计算机视觉简介 技术背景 了解人工智能方向、热点 目前人工智能的技术方向有: 1、计算机视觉——计算机视觉(CV)是指机器感知环境的能力;这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。物体检测和人脸识别是其比较成功…...
layui(2.8.18)生成验证码
<!DOCTYPE html> <html> <head><meta charset"utf-8"><title>登入</title><meta name"renderer" content"webkit"><meta http-equiv"X-UA-Compatible" content"IEedge,chrome1&quo…...
Lumafly:空洞骑士玩家的终极模组管理器,跨平台一键安装告别复杂配置
Lumafly:空洞骑士玩家的终极模组管理器,跨平台一键安装告别复杂配置 【免费下载链接】Lumafly A cross platform mod manager for Hollow Knight written in Avalonia. 项目地址: https://gitcode.com/gh_mirrors/lu/Lumafly 对于《空洞骑士》的…...
效率飙升秘籍:用快马AI生成可定制、可导出的高级账号生成器
效率飙升秘籍:用快马AI生成可定制、可导出的高级账号生成器 最近在开发测试账号批量生成工具时,发现手动编写规则和导出功能特别耗时。经过实践,我发现用InsCode(快马)平台可以快速生成功能完善的直登号生成器2.0版本,效率提升明…...
特朗普孤注一掷,美国要最后的疯狂了!
坏土豆 作品首发于微信号 一个坏土豆陪我的国一起复兴特朗普要孤注一掷了,要带领美国进入最后的疯狂,未来的全球局势将发生巨大变化。5月2日,白宫发了一段堪称史诗级的神奇的视频,全世界都震惊了。视频里面就是特朗普在各种场合疯…...
等保测评官现场发问的5个致命问题,Docker 27金融容器团队如何用1份证据包一次性闭环应答?
更多请点击: https://intelliparadigm.com 第一章:Docker 27金融容器等保适配方法论总览 在金融行业强监管背景下,Docker 27 版本(含 containerd v2.0、runc v1.2)需满足《网络安全等级保护基本要求》(GB…...
别再手动转字段了!Spring Boot 2.7.x 里 Jackson 全局下划线转驼峰,一个配置就搞定
Spring Boot 2.7.x全局命名策略:告别字段转换的重复劳动 在前后端分离架构成为主流的今天,数据格式的统一却成了开发者们日常的痛点。每当看到代码中散落各处的JsonProperty注解,或是为了适配不同系统的命名规范而编写的转换工具类࿰…...
如何让Obsidian笔记库拥有AI大脑:obsidian-copilot完全指南
如何让Obsidian笔记库拥有AI大脑:obsidian-copilot完全指南 【免费下载链接】obsidian-copilot THE Copilot in Obsidian 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-copilot 你是否曾在海量笔记中迷失方向?当需要从数百个文档中提取…...
英雄联盟个性化展示终极指南:用LeaguePrank安全打造你的专属游戏身份
英雄联盟个性化展示终极指南:用LeaguePrank安全打造你的专属游戏身份 【免费下载链接】LeaguePrank 项目地址: https://gitcode.com/gh_mirrors/le/LeaguePrank 想要在《英雄联盟》中展示与众不同的游戏形象吗?LeaguePrank为你提供了安全又创意的…...
BinaryMuseGAN终极指南:二值神经元在音乐生成中的革命性应用
BinaryMuseGAN终极指南:二值神经元在音乐生成中的革命性应用 【免费下载链接】musegan An AI for Music Generation 项目地址: https://gitcode.com/gh_mirrors/mu/musegan BinaryMuseGAN是一个基于GAN(生成对抗网络)的音乐生成AI项目…...
别再手动写API了!用gRPC + Protobuf 3.19.1自动生成Go服务端和客户端代码
从零构建gRPC微服务:用Protobuf自动生成Go代码的终极实践 当你面对一个需要快速迭代的内部微服务项目时,是否厌倦了手动编写大量重复的REST API代码?每次添加新接口都要处理路由定义、参数解析、响应封装这些机械劳动,不仅效率低下…...
电子产品风扇噪音评估与系统级噪音优化的综合解决方案
🎓作者简介:科技自媒体优质创作者 🌐个人主页:莱歌数字-CSDN博客 211、985硕士,从业16年 从事结构设计、热设计、售前、产品设计、项目管理等工作,涉足消费电子、新能源、医疗设备、制药信息化、核工业…...
