当前位置: 首页 > news >正文

C++:引用

引用就是某一变量的一个别名。

引用必须要初始化。

引用可以代替地址传参,而且在C++中常用引用而不是地址传参。

引用没有空间,没有指针,没有多级引用。

指针有引用。

引用的格式为:类型标识符+&+引用名=目标变量名

例如:

int a;
int& ra = a;
#include<iostream>
using namespace std;int main()
{int a = 100;int& ra = a;//已绑定 不会改int b = 20;ra = b;b = 200;cout << a << endl;//20cout << b << endl;//200return 0;
}

对指针的引用:

#include<iostream>
using namespace std;int main()
{int a = 100;int&* p = &ra;引用是没有指针的//int* pp = &ra;//a的地址int* p = &a;int*& rp = p;//指针的引用cout << rp << endl;return 0;
}

引用作为函数的参数:

#include<iostream>
using namespace std;void swap(int& ra, int& rb)
{int temp = ra;ra = rb;rb = temp;
}int main()
{//交换ab的值int a = 1;int b = 2;swap(a, b);cout << a << " " << b << endl;return 0;
}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【Python报错已解决】`TypeError: an integer is required (got type bytes)`
  • 原码 补码 反码
  • 常用开发工具配置笔记
  • 保存大量数据用sqllite还是indexdb
  • 黑屏环境下,如何利用OBD部署OceanBase企业版集群
  • H264编码原理(二)帧内预测
  • 多场景建模: STAR(Star Topology Adaptive Recommender)
  • uniapp scroll-view滚动触底加载 height高度自适应
  • MySQL中的锁详解
  • SLAM ORB-SLAM2(29)PnP估计姿态
  • C++ | Leetcode C++题解之第375题猜数字大小II
  • Java面试宝典-java基础07
  • 安嘉空间:智慧科技守护空间健康
  • 认知杂谈31
  • [图解]SysML和EA建模住宅安全系统-活动作为块
  • 收藏网友的 源程序下载网
  • __proto__ 和 prototype的关系
  • 【翻译】babel对TC39装饰器草案的实现
  • Akka系列(七):Actor持久化之Akka persistence
  • js面向对象
  • js作用域和this的理解
  • React as a UI Runtime(五、列表)
  • spring cloud gateway 源码解析(4)跨域问题处理
  • storm drpc实例
  • vue-router的history模式发布配置
  • 阿里研究院入选中国企业智库系统影响力榜
  • 初识 webpack
  • 大主子表关联的性能优化方法
  • 番外篇1:在Windows环境下安装JDK
  • 可能是历史上最全的CC0版权可以免费商用的图片网站
  • 区块链技术特点之去中心化特性
  • 使用阿里云发布分布式网站,开发时候应该注意什么?
  • 算法系列——算法入门之递归分而治之思想的实现
  • #Datawhale AI夏令营第4期#多模态大模型复盘
  • #window11设置系统变量#
  • #免费 苹果M系芯片Macbook电脑MacOS使用Bash脚本写入(读写)NTFS硬盘教程
  • $(this) 和 this 关键字在 jQuery 中有何不同?
  • $.extend({},旧的,新的);合并对象,后面的覆盖前面的
  • $.proxy和$.extend
  • (160)时序收敛--->(10)时序收敛十
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (简单) HDU 2612 Find a way,BFS。
  • (牛客腾讯思维编程题)编码编码分组打印下标题目分析
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (十二)springboot实战——SSE服务推送事件案例实现
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • (原創) 博客園正式支援VHDL語法著色功能 (SOC) (VHDL)
  • (转)GCC在C语言中内嵌汇编 asm __volatile__
  • (转)Linq学习笔记
  • .bashrc在哪里,alias妙用
  • .java 指数平滑_转载:二次指数平滑法求预测值的Java代码
  • .NET CORE 第一节 创建基本的 asp.net core
  • .NET(C#、VB)APP开发——Smobiler平台控件介绍:Bluetooth组件
  • .NET面试题解析(11)-SQL语言基础及数据库基本原理