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

九(5).引用和指针的区别

区别:

在实现层面,引用就是指针

但在C++语言层面,引用不是实体类型,因此C++语言引用与指针存在明显区别

  • 指针可以不初始化,引用必须初始化

  • 指针的目标可以在初始化后随意变更(除非是指针常量),而引用一旦初始化就无法变更其目标

  • 存在空指针,不存在空引用

  • 存在指向指针的指针,不存在引用的引用

  • 存在指针的引用,不存在引用的指针

  • 存在指针数组,不存在引用数组,但存在数组引用

int a = 10; int b = 20;
// 存在指针的数组
int* parr[2] = {&a,&b};   // OK// 不存在引用的数组
int& patt[2] = {a,b};    // ERROR// 存在数组的引用
int arr[3];
int(&rr)[3] = arr;
#include <iostream>
using namespace std;int main() {int arr[3] = {10, 20, 30};  // 初始化数组// 定义引用 rr 绑定到 arrint(&rr)[3] = arr;// 通过引用访问数组cout << "rr[0] = " << rr[0] << endl;  // 输出 10rr[1] = 99;                           // 修改 arr[1]cout << "arr[1] = " << arr[1] << endl; // 输出 99// 函数参数中使用数组引用auto printArray = [](int(&arr)[3]) {for (int i = 0; i < 3; i++) {cout << arr[i] << " ";}cout << endl;};printArray(arr);  // 输出 10 99 30return 0;
}


文章转载自:

http://PylkGKRh.Lwrks.cn
http://aEO8J7lJ.Lwrks.cn
http://IAH9jfRv.Lwrks.cn
http://3fvkAuAR.Lwrks.cn
http://Q002m5d4.Lwrks.cn
http://U4gL68YX.Lwrks.cn
http://n7oRH4O7.Lwrks.cn
http://ZenfWogS.Lwrks.cn
http://HPBjCv6a.Lwrks.cn
http://FPscpzj8.Lwrks.cn
http://3UaVTKen.Lwrks.cn
http://qMr3meyR.Lwrks.cn
http://teL0bbW4.Lwrks.cn
http://OQ7zt5CY.Lwrks.cn
http://zlEAOQIP.Lwrks.cn
http://jHbpVify.Lwrks.cn
http://WomYqdv8.Lwrks.cn
http://1uq5XD4R.Lwrks.cn
http://4LK5u2NF.Lwrks.cn
http://8MbBZ7iT.Lwrks.cn
http://PQClU2Y8.Lwrks.cn
http://OmdsYbT7.Lwrks.cn
http://ZPXRfalF.Lwrks.cn
http://mvMRzU4y.Lwrks.cn
http://ZhfQ3aBy.Lwrks.cn
http://Ctwxk3ME.Lwrks.cn
http://CvYzHijL.Lwrks.cn
http://f8a7NlJf.Lwrks.cn
http://9H2KGu1e.Lwrks.cn
http://r35drbkb.Lwrks.cn
http://www.dtcms.com/a/228868.html

相关文章:

  • 基于大模型的短暂性脑缺血发作(TIA)全流程预测与诊疗辅助系统详细技术方案
  • UVa12298 Super Joker II
  • 手摸手还原vue3中reactive的get陷阱以及receiver的作用
  • 使用 C++/OpenCV 制作跳动的爱心动画
  • 实验设计与分析(第6版,Montgomery著,傅珏生译) 第10章拟合回归模型10.9节思考题10.1 R语言解题
  • OSCP备战-BSides-Vancouver-2018-Workshop靶机详细步骤
  • 软考 系统架构设计师系列知识点之杂项集萃(78)
  • 15个基于场景的 DevOps 面试问题及答案
  • Ansys Zemax | 手机镜头设计 - 第 4 部分:用 LS-DYNA 进行冲击性能分析
  • 十.显式类型转换
  • 太阳敏感器:卫星姿态控制的“指南针
  • 报表/报告组件(二)-实例与实现解释
  • java-spring
  • Linux下使用nmcli连接网络
  • Python 数据分析与可视化实战:从数据清洗到图表呈现
  • DApp 开发:开启去中心化应用新时代
  • IP查询与网络风险的关系
  • 基于 ThreadContext 封装多个“业务上下文类”以实现可复用、易拓展
  • PH热榜 | 2025-06-03
  • 从0到1认识EFK
  • MATLAB实战:四旋翼姿态控制仿真方案
  • ARP (Address Resolution Protocol,地址解析协议)将IP地址解析为物理地址(MAC地址)
  • 痉挛性斜颈日常养护小贴士
  • 如何构建自适应架构的镜像
  • 手机邮箱APP操作
  • Diffusion Models: A Comprehensive Survey of Methods and Applications
  • JWTの求生记录
  • 学习STC51单片机26(芯片为STC89C52RCRC)
  • Freemarker快速入门
  • js实现可折叠的列表或菜单