用“引用“作形参,实现两个变量的值互换

解题思路:

        以引用作为形参,在虚实结合时建立变量的引用,使形参名作为实参的"引用",即形参成为实参的引用。

编写程序:

运行结果:

程序分析:
        在定义swap函数声明形参时,指定a和b是整型变量的引用。请注意:在此处&a不是"a的地址",而是指"a是一个整型变量的引用(别名),&是引用声明符。"由于是形参,不必对它初始化,即未指定它们是哪个变量的别名。当main函数调用swap函数时,进行虚实结合,把实参变量i和j的地址传给形参a和b。这样a成为i的别名。同理,b成为j的别名。在swap函数中使a和b的值对换,显然,i和j的值同时改变了。在main函数中输出i和j已改变了的值。
        这就是地址传递方式,可以发现,C++在调用函数时有两种方式:传值方式和传址方式,用引用型形参的方法比使用指针型形参的方法简单、直观、方便,可以部分代替指针的操作。有些过去只能用指针来处理的问题,现在可以用引用来代替,从而降低了程序设计的难度。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

有一个主域名跟多个二级子域名时该怎么申请SSL证书?

当您拥有主域名以及多个子域名时,选择合适的SSL证书类型对于确保网站的安全性至关重要。以下是三种SSL证书类型的简要介绍: 单域名SSL证书: 功能:只能绑定单个域名,无论是主域名还是子域名。 适用场景:仅…

(3)图像识别yolov5—训练自定义模型

目录 1. 准备数据集 (1) 收集图像: (2) LabelImg标注图像: 2. 模型训练 3. 评估模型 4. 使用模型进行推理 5. 完整文件下载 YOLOv5 是一个用于目标检测的深度学习模型,它非常流行且易于使用。如果你想使用 YOLOv5 训练自定义的模型,以下是一个基本的步骤指南…

狒狒吃香蕉(二分查找)

狒狒吃香蕉(二分查找) 这个问题可以形式化为一个搜索问题,在可能的速度范围[1, max]内寻找一个合适的速度K,其中max是香蕉堆中最大一堆的香蕉数量。 我们知道,如果狒狒的速度太慢,她将无法在警卫回来之前吃…

[项目推荐]EmoLLM-心理健康大模型

EmoLLM 是一系列能够支持理解用户-支持用户-帮助用户心理健康辅导链路的开源心理健康大模型,由LLM指令微调而来。它旨在全面理解和促进个体、群体乃至整个社会的心理健康状态。 项目介绍 GitHub:https://github.com/SmartFlowAI/EmoLLM 【EmoLLM项目提供…

Linux---sudo命令

文章目录 目录 文章目录 一.sudo命令简介 二.sudo 命令的特点 三.sudo 相关文件 四.sudo 命令授权配置 一.sudo命令简介 sudo 命令全称“SuperUser Do”,是Linux系统中的一个命令能够使普通用户以超级用户身份去执行某些命令。 二.sudo 命令的特点 sudo能够授权…

论文阅读:All-In-One Image Restoration for Unknown Corruption

发表时间:2022 cvpr 论文地址:https://openaccess.thecvf.com/content/CVPR2022/papers/Li_All-in-One_Image_Restoration_for_Unknown_Corruption_CVPR_2022_paper.pdf 项目地址:https://github.com/XLearning-SCU/2022-CVPR-AirNet 代码解读…

诊所管理系统免费软件哪个好一点?

不少诊所管理者,想要寻找一款适合自己诊所的免费诊所管理系统。市场上有多个选择,那么,哪个会好一点呢?在选择适合自己诊所的免费诊所管理系统时,考虑系统的易用性、功能全面性、技术支持以及未来可扩展性是非常重要的。下面&…

在AMD GPU上加速大型语言模型的Flash Attention

Accelerating Large Language Models with Flash Attention on AMD GPUs — ROCm Blogs 引言 在这篇博客文章中,我们将指导您如何在AMD GPU上安装Flash Attention,并提供与在PyTorch中标准SDPA比较其性能的基准测试。我们还将测量Hugging Face中多个大型…

win11联想版,如何下载Visual Basic 6.0精简版

一、背景 Visual Basic 6.0精简版、Visual Basic Mini,等 Win11系统,网上找压缩包下载,无法成功。 二、解决 通过下载联想应用商店,在应用商店中下载 步骤一 hi,推荐你使用联想应用商店,商店提供上万款…

积累和消耗,人生本质的两件事

人生的本质其实就两件事,消耗和积累。 纵观你身边所有的人,他们做的所有的事,基本都可以分为两类。 一、积累 二、消耗 比如说感情,在我们每一个人的青春回忆里,都或多或少有一段刻骨铭心的感情,有些人的感…

sklearn深度学习指南:掌握机器学习的利器

sklearn深度学习指南:掌握机器学习的利器! 1. 简介1.1 什么是sklearn?1.2 sklearn的优势和应用领域1.3 为什么要学习和使用sklearn? 2. 安装和环境设置2.1 如何安装sklearn?安装Anaconda(Windows/macOS/Lin…

6.8日志系统

当做大型项目的时候,出了bug可能需要借助于日志检查,小项目一般是打断点。 服务器是一直在运行的,不能停止,可以借助于日志检查错误。 日志分为两种:业务级别的日志(供用户分析业务过程)&…

BarTender软件下载附加详细安装教程

BarTender是美国海鸥科技推出的一款优秀的条码打印软件,应用于 WINDOWS95 、 98 、 NT 、 XP 、 2000 、 2003 和 3.1 版本, 产品支持广泛的条形码码制和条形码打印机, 不但支持条形码打印机而且支持激光打印机,还为世界知名品牌条…

C语言 指针——字符数组与字符指针:字符串的表示与存储

目录 字符串常量 字符串变量? 字符数组的定义和初始化 字符指针的定义和初始化 将字符指针指向一个字符串 用字符数组保存一个字符串 将字符指针指向一个字符数组 使用字符指针的基本原则 使用指针的基本原则 字符串常量 字符串变量?  C 语言…

Steam下载游戏很慢?一个设置解决!

博主今天重装系统后,用steam下载发现巨慢 500MB,都要下载半小时。 平时下载软件,一般1分钟就搞定了,于是大致就知道,设置应该出问题了 于是修改了,如下设置之后,速度翻了10倍。 另外&#x…

神经网络 torch.nn---Convolution Layers

torch.nn — PyTorch 2.3 documentation torch.nn - PyTorch中文文档 (pytorch-cn.readthedocs.io) torch.nn和torch.nn.functional的区别 torch.nn是对torch.nn.functional的一个封装,让使用torch.nn.functional里面的包的时候更加方便 torch.nn包含了torch.nn.…

随心笔记,第六更

目录 一、 三步构建 XML转成java bean 1.XML转XSD 2.XSD转JavaBean 3.jaxb 工具类 4.测试 📢📢📢📣📣📣 哈喽!大家好,我是「Leen」。刚工作几年,想和大家一同进步&am…

从零开始手把手Vue3+TypeScript+ElementPlus管理后台项目实战十(整体布局03之界面美化)

删除style.css 删除style.css(和main.ts同级) 并且注释掉main.ts中对style.css的导入。 修改App.vue 添加样式设置高度100% 安装sass pnpm install -D sass修改PageSidebar.vue 修改index.vue 修改src/layout/index.vue src/layout/index.vue添加样式 <style lang&quo…

pyinstaller打包exe多种失败原因解决方法

pyinstaller打包exe多种失败原因解决方法 目录 pyinstaller打包exe多种失败原因解决方法1、pyinstaller安装有问题1.1 安装pyinstaller1.2 采用anconda的环境启动 2、pyqt5与pyside6冲突2.1 打包生成.spec文件2.2 编辑spec文件 3、打包成功后打不开exe&#xff0c;exe闪退3.1 s…

用表头设置控制表格内列的排序和显示隐藏

项目背景 : react ant 需求 : 点击表头设置弹窗 , 拖拽可控制外部表格列的排序 , 开关可控制外部表格列的显示和隐藏 实现效果如下 :注意 : 1. 拖拽效果参考了ant-table中的拖拽效果(这块代码放最后) 2. 后台反了json格式(用is_show控制显示和隐藏 , 我给他传…