1.8C++流提取运算符重载

C++流提取运算符重载

在 C++中,流提取运算符(>>)是用于从流中提取数据的运算符。

C++中的流提取运算符可以被重载,使得程序员可以自定义输入对象的方式,更方便地输入自定义的数据类型,也可以使得输入更加灵活和方便。

流提取运算符重载的一般形式:

在这里插入图片描述
其中,T 是要输入的自定义类型,is 是一个 std::istream 类型的输入流对象,obj 是要输入的自定义类型的对象。

重载函数的返回值是一个 std::istream 类型的引用,表示输入流对象。

下面是我写的流提取运算符重载 demo:
在这里插入图片描述
在上述 demo 中,我定义了一个名为 MyObject 的类,并在其中重载了流提取运算符>>。

重载函数的第一个参数是一个 std::istream 类型的引用,表示输入流对象;

第二个参数是一个 MyObject 类型的非常量引用,表示要输入的对象。

在重载函数中,我使用输入流对象 is 从输入流中提取了一个整数,并将其赋值给了 MyObject 对象的 value 成员变量,最后返回输入流对象 is。

在主函数中,我创建了一个 MyObject 对象 obj,并使用 cin 流将用户输入的整数输入到 MyObject 对象中。

然后调用 MyObject 类的成员函数printValue(),输出MyObject对象的值。

上述 demo 编译运行结果:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/28805.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数字中国,开鸿见日

讲个小故事,《晋书乐广传》记载,西晋名士乐广,请大文学家潘岳替自己写一篇文章。潘岳让乐广把意思完完整整告诉他,再由他来动笔,最终写成了名扬当时的《呈太尉辞河南尹表》。时人看过这篇文章,评价乐广是“…

传输平台太多?难以管理?看这款跨网传输系统怎样解决

传输作为企业正常运行中最日常的行为,也意味着出现频率最高。微信、QQ、邮件、或是钉钉等办公软件,每天大家上班时开着各种软件,进行着不同的信息交互与传输。很多员工在工作时往往是哪个软件方便顺手就用哪个传输,但是这样也意味…

python打包后报错,无法启动,电脑缺少api-ms-win-core-path-11-1-0.dll

参考:《运行打包python程序时报:无法启动此程序,因为计算机中丢失 api-ms-win-core-path-l1-1-0.dll 尝试重新安装该程序以解决此问题。》 原因:python版本较高,打包时的python版本是python3.10,而运行打包…

xxl-job核心源码解析

xxl-job源码解析 如何自研一个xxljob 注册服务调度服务RPC组件(基建,底层严重依赖)日志服务告警服务 系统架构 执行流程 各大调度中心对比 1)服务端启动流程 首先找到配置类 XxlJobAdminConfig 可以发现该类实现 InitializingBean接口,…

批量生成,本地推理,人工智能声音克隆框架PaddleSpeech本地批量克隆实践(Python3.10)

云端炼丹固然是极好的,但不能否认的是,成本要比本地高得多,同时考虑到深度学习的训练相对于推理来说成本也更高,这主要是因为它需要大量的数据、计算资源和时间等资源,并且对超参数的调整也要求较高,更适合…

熬夜三晚之深度解析DuckDB MetaPipeline

深度解析DuckDB MetaPipeline 深度解析DuckDB MetaPipeline 1.导语 2.基础理论 3.HashJoin深度解析 3.1 RESULT_COLLECTOR 3.2 PROJECTION 3.3 HASH_JOIN 4.Ready 4.1 翻转 4.2 MetaPipeline与pipeline 5.汇总 1.导语 DuckDB 是…

深入理解深度学习——Transformer:基础知识

分类目录:《深入理解深度学习》总目录 相关文章: 作为当下最先进的深度学习架构之一,Transformer被广泛应用于自然语言处理领域。它不单替代了以前流行的循环神经网络(recurrent neural network, RNN)和长短期记忆(long short-term memory, …

从 Google 删库,到蚂蚁跑路,Care 与 Fear 点燃的 Flare

Bytebase 第一次完成融资后写了一篇文章,主要讲了从行业层面做 Bytebase 的逻辑。一年过去了,这一年我们所处的开源/infra/数据库/企业服务赛道从热点归于平静,尤其在国内,又习惯性地反应过度,直接降到冰点。但从全球来…

Apache RocketMQ RCE漏洞复现(CVE-2023-33246)

RocketMQ RocketMQ是阿里巴巴在2012年开发的分布式消息中间件,专为万亿级超大规模的消息处理而设计,具有高吞吐量、低延迟、海量堆积、顺序收发等特点。它是阿里巴巴双十一购物狂欢节和众多大规模互联网业务场景的必备基础设施。 漏洞概述 在其5.1.0版…

基于Servlet+mysql+jsp学生宿舍信息管理系统

基于Servletmysqljsp学生宿舍信息管理系统 一、系统介绍二、功能展示1.用户登陆2.学生-主页面3.学生-缺勤记录4.学生-修改密码5.宿舍管理员-主页面6.宿舍管理员-学生查看7.宿舍管理员-缺勤记录8.系统管理员-宿舍管理员管理9.系统管理员-学生管理10.系统管理员-宿舍楼管理11.系统…

5大趋势与10大应用场景!未来的智能工厂要这么建...

在经济下行压力、人口红利消失、消费结构升级、疫情冲击等多种因素推动下,制造企业加快转型步伐,工厂正向高效化、智能化、绿色化方向跃迁升级,不断涌现出技术创新、应用领先、成效显著的智能工厂。 近日,中国信息通信研究院发布…

外观模式(十三)

每天都是全新的一天,感谢今日努力的自己。 上一章简单介绍了组合模式(十二), 如果没有看过, 请观看上一章 一. 外观模式 引用 菜鸟教程里面的外观模式介绍: https://www.runoob.com/design-pattern/facade-pattern.html 外观模式(Facade Pattern&…

OpenCV 项目开发实战--用 (C++ / Python)实现伪着色

文末附相关测试代码下载链接 在本教程中,我们将首先展示一种使用 OpenCV 的预定义颜色图对灰度图像进行伪彩色/伪彩色 的简单方法。如果您更愿意使用自己的颜色图,我们还将展示一种定义自定义颜色图的方法。 行星和太空中其他物体的灰度图像通常是伪彩色的,以显示细…

Vue中如何进行滚动吸顶与侧边栏固定

Vue中如何进行滚动吸顶与侧边栏固定 在Vue应用程序中,当需要实现滚动吸顶和侧边栏固定效果时,我们可以使用一些技术来实现。这些技术包括CSS和JavaScript,可以帮助我们实现各种各样的滚动效果。 如何实现滚动吸顶? 滚动吸顶是指…

[Halcon3D] 3D鞋点胶的点云边界提取

📢博客主页:https://loewen.blog.csdn.net📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!📢本文由 丶布布原创,首发于 CSDN,转载注明出处🙉📢现…

JavaWeb之JSP

文章目录 JSP的基本介绍JSP的本质JSP的三种语法JSP头部的page指令language属性contentType属性image.pngpageEncoding属性import属性autoFlush属性 - 给out输出流使用buffer属性 - 给out输出流使用errorPage属性isErrorPage属性session属性extends属性 JSP中的常用脚本声明脚本…

什么是oa系统,什么是工单系统,有啥区别?

什么是oa系统,什么是工单系统,有啥区别? 一、OA系统与工单系统介绍 1、什么是OA系统 OA系统全称为Office Automation,即办公自动化系统。它是一种专门为企业和机构的日常办公工作提供服务的综合性软件平台,具有信息…

Python抓取商品详情方法的几种方法比较

抓取商品详情的方法有很多种,以下是其中几种常见的方法及其优缺点: 1.使用requests库发送HTTP请求,然后解析HTML或JSON格式的数据: 优点:这种方法可以抓取几乎所有网站上的数据,支持GET和POST请求&#xff…

佩戴比较舒适的蓝牙耳机有哪些?值得入手的蓝牙耳机分享

​对于年轻人来说,耳机使用场景丰富,时尚追求度高,喜好的音乐类型也是多种多样,需求侧重也不尽相同。下面我来推荐几款相当不错的蓝牙耳机给大家,总会有喜欢那款! 一、南卡OE蓝牙耳机 佩戴舒适度打分&…

界面开发框架Qt新手入门指南 - 使用Calendar组件创建日历(一)

Qt 是目前最先进、最完整的跨平台C开发工具。它不仅完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具。如今,Qt已被运用于超过70个行业、数千家企业,支持数百万设备及应用。 本文中的CalendarWi…
最新文章