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

换个花样玩C++(4)细聊C++的引用精妙之处

        引用是C++引入的新语言特性。而且在日常工作开发过程中,经常会使用到引用,对于一些做系统架构的架构师而言,这也是不可或缺的一门基本功,我在工作中发现,很多人并没有搞清楚引用。因此我在本篇中将对引用进行详细讨论,希望对大家更好地理解和使用引用起到抛砖引玉的作用。 

引用的概念

         引用不是新定义一个变量,而是给已存在变量取了一个别名 ,编译器不会为引用变量开辟内存空间,它和它引用的变量共用同一块内存空间。我们先来看基础的示例代码

示例1:

#include<iostream>  
int main() {int a = 100; int& b = a; std::cout << a << "," << b << std::endl;return 0;
}

很简单就是这样用的,那么我们来看下a和b的地址:

 可以看到a和b的地址相同,所以证明刚才说的引用本身和引用的变量共用同一块内存空间。

那么能否使用一个引用,不做任何初始化操作?

int main() { int& b; return 0;
}

答案是不行的,必须初始化,否则编译器不通过。 

那么能否让引用再

相关文章:

换个花样玩C++(4)细聊C++的引用精妙之处

引用是C++引入的新语言特性。而且在日常工作开发过程中,经常会使用到引用,对于一些做系统架构的架构师而言,这也是不可或缺的一门基本功,我在工作中发现,很多人并没有搞清楚引用。因此我在本篇中将对引用进行详细讨论,希望对大家更好地理解和使用引用起到抛砖引玉的作用。…...

Linux安装helm

前言 运行环境&#xff1a;CentOS7.9 官方参考文档&#xff1a;官方文档 文章末尾附有一键安装脚本 下载安装包 github下载对应版本的安装包&#xff0c;下载地址 进入对应版本的下载页面&#xff0c;这里以v3.11.3为例 选择对应系统的安装包&#xff0c;这里以linux为例 …...

ATTCK v12版本战术介绍——防御规避(四)

一、引言 在前几期文章中我们介绍了ATT&CK中侦察、资源开发、初始访问、执行、持久化、提权战术理论知识及实战研究、部分防御规避战术&#xff0c;本期我们为大家介绍ATT&CK 14项战术中防御规避战术第19-24种子技术&#xff0c;后续会介绍防御规避其他子技术&#xf…...

Orangepi Zero2 全志H616(DHT11温湿度检测)

最近在学习Linux应用和安卓开发过程中&#xff0c;打算把Linux实现的温湿度显示安卓app上&#xff0c;于是在此之前先基于Orangepi Zero2 全志H616下的wiringPi库对DHT11进行开发&#xff0c;本文主要记录开发过程的一些问题和细节&#xff0c;主要简单通过开启线程来接收温湿度…...

abbyy是什么软件

ABBYY&#xff0c;一款强大的OCR文字识别软件&#xff01; 在日常的工作中&#xff0c;我们常常需要提取PDF或图片上的大段文字&#xff0c;如果字数少的话&#xff0c;我们可以直接手打&#xff0c;但如果出现大篇幅的文字&#xff0c;那就有点头疼了。今天&#xff0c;我就向…...

软件测试技术(四)白盒测试

白盒测试 白盒测试&#xff08;White Box Testing&#xff09;又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试只测试软件产品的内部结构和处理过程&#xff0c;而不测试软件产品的功能&#xff0c;用于纠正软件系统在描述、表示和规格上的错误&#xff0c…...

Java基础语法(十二):try-catch块

目录 前言 一、try-catch是什么&#xff1f; 二、其他异常处理机制 总结 前言 Java 异常处理机制是 Java 程序设计中至关重要的一部分。它允许程序员像处理普通数据一样处理异常&#xff0c;并根据异常类型采取合适的措施。其中一个非常基本的异常处理机制是 try-catch 块…...

尚融宝25-投资列表展示以及实现充值功能

目录 一、展示投资列表 &#xff08;一&#xff09;需求 &#xff08;二&#xff09;后端 &#xff08;三&#xff09;前端 二、充值功能 &#xff08;一&#xff09;需求 1、需求描述 2、流程 &#xff08;二&#xff09;充值 1、后端 2、前端 &#xff08;三&…...

QML基础模型(Basic Model)

最基本的分离数据与显示的方法是使用Repeater元素。它被用于实例化一组元素项&#xff0c;并且很容易与一个用于填充用户界面的定位器相结合。 最基本的实现举例&#xff0c;repeater元素用于实现子元素的标号。每个子元素都拥有一个可以访问的属性index&#xff0c;用于区分不…...

如果ChatGPT写作论文,保姆及教程以及问题答疑

上次发表“如何用ChatGPT完成论文”后&#xff0c;许多捧场看官评论讨论&#xff0c;也有不少同学实操成功&#xff0c;但更多人寻求帮助。所以今天再整理一篇&#xff0c;把大家的疑问进行说明。 1. ChatGPT写的论文能否被检查出&#xff1f; 有同学反映将一段ChatGPT…...

机器人中的数值优化(三)—— 无约束最优化方法基础、线搜索准则

本系列文章主要是我在学习《数值优化》过程中的一些笔记和相关思考&#xff0c;主要的学习资料是深蓝学院的课程《机器人中的数值优化》和高立编著的《数值最优化方法》等&#xff0c;本系列文章篇数较多&#xff0c;不定期更新&#xff0c;上半部分介绍无约束优化&#xff0c;…...

vulnhub靶场之bluemoon

1.信息收集 存活主机进行探测&#xff0c;发现主机192.168.239.176存活。 对主机192.168.239.176进行端口扫描&#xff0c;发现21、22、80端口 访问http://192.168.239.176&#xff0c;并查看源码未发现可利用的行为。 进行目录扫描发现可疑路径/hidden_text 浏览器访问h…...

VTK 几何体连通区域分析 vtkPolyDataConnectivityFilter

前言&#xff1a; vtkPolyDataConnectivityFilter 使用过&#xff0c;但网上没有看到完事的教程&#xff1b;这里整理一下&#xff1b; 提取数据集中连通的多边形数据。 该类是一个滤波器&#xff0c;提取cell&#xff08;区域&#xff09; - 拥有公共点或者满足某个阈值 该类…...

scss、css样式中使用变量的方法;Vue动态改变css等样式文件中的变量

目录 一、问题 二、原因及解决方法 三、总结 一、问题 1.遇到一些样式 设置的值都是重复的不想重复写&#xff0c;想和js一样定义一个常量&#xff0c;然后直接引用这个常量。 2.想要在js中动态设置样式中的值&#xff0c;在 css、scss等样式表中直接使用。 二、原因及解…...

数据治理在学术上的发展史以及未来展望

数据治理是大数据领域中非常重要的一环&#xff0c;从早期的学术研究到如今的各大企业落地实践&#xff0c;经历了漫长的过程&#xff0c;数据治理的实践落地本身也是一场马拉松。 从百度学术通过精确关键词匹配&#xff0c;搜索中文期刊的“数据治理” 和外文期刊的“data gov…...

【搭建博客】宝塔面板部署Typecho博客,并发布上线访问

目录 前言 1.安装环境 2.下载Typecho 3.创建站点 4.访问Typecho 5.安装cpolar 6.远程访问Typecho 7.固定远程访问地址 8.配置typecho 前言 Typecho是由type和echo两个词合成的&#xff0c;来自于开发团队的头脑风暴。Typecho基于PHP5开发&#xff0c;支持多种数据库&…...

【Spring篇】IOC相关内容

&#x1f353;系列专栏:Spring系列专栏 &#x1f349;个人主页:个人主页 目录 一、bean基础配置 1.bean基础配置(id与class) 2.bean的name属性 3.bean作用范围scope配置 二、bean实例化 1.构造方法实例化 2.分析Spring的错误信息 3.静态工厂实例化 4.实例工厂 5.FactoryBean 三…...

Python超矩形

文章目录 距离函数矩形分割 Rectangle是 scipy.spatial中封装的类&#xff0c;其构造函数只需输入最小值和最大值的数组即可&#xff0c;并且可通过内置的 volume方法计算广义的体积。 from scipy.spatial import Rectanglerec Rectangle((0,0), (5,5)) print(rec.maxes) …...

【软考数据库】第五章 计算机网络

目录 5.1 网络功能和分类 5.2 OSI七层模型 5.3 TCP/IP协议 5.4 传输介质 5.5 通信方式和交换方式 5.6 IP地址 5.7 IPv6 5.8 网络规划和设计 5.9 其他考点补充 5.10 网络安全技术 5.11 网络安全协议 前言&#xff1a; 笔记来自《文老师软考数据库》教材精讲&#xff…...

深眸科技|深度学习、3D视觉融入机器视觉系统,实现生产数智化

随着“中国制造2025”战略加速落实&#xff0c;制造业生产线正在加紧向智能化、自动化和数字化转型之路迈进。而人工智能技术的兴起以及边缘算力持续提升的同时&#xff0c;机器视觉及其相关技术也在飞速发展&#xff0c;并不断渗透进工业领域&#xff0c;拓展应用场景的同时&a…...

168MHz Cortex-M4+FPU+1MB Flash:STM32F405RGT6的高性能工业MCU参数解析

STM32F405RGT6&#xff1a;168MHz Cortex-M4工业MCU的高性能标杆在工业控制、电机驱动和物联网网关等嵌入式应用中&#xff0c;微控制器需要在处理性能、存储容量和外设集成度之间取得平衡。STM32F405RGT6是意法半导体STM32F4系列中的经典型号&#xff0c;基于ARM Cortex-M4内核…...

WorkshopDL:打破平台壁垒,免费获取Steam创意工坊模组的终极方案

WorkshopDL&#xff1a;打破平台壁垒&#xff0c;免费获取Steam创意工坊模组的终极方案 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 还在为Epic、GOG等平台购买的游戏无法使…...

基于GIS流域水文分析及水库库容计算实践技术

1、GIS水文分析的原理、DEM数据的获取与处理2、基于水文分析的流域边界、河道及分子流域提取3、暴雨情景下流域淹没区快速识别4、基于GIS的水库库容计算...

本地大模型赋能Thunderbird:离线AI邮件助手部署与实战指南

1. 项目概述&#xff1a;当本地大模型遇上邮件客户端 如果你和我一样&#xff0c;每天被海量的邮件淹没&#xff0c;同时又对AI助手处理邮件的隐私问题心存疑虑&#xff0c;那么“micz/ThunderAI”这个项目可能会让你眼前一亮。简单来说&#xff0c;它是一款为经典邮件客户端Th…...

宠物领养平台(10052)

有需要的同学&#xff0c;源代码和配套文档领取&#xff0c;加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码&#xff08;前后端源代码SQL脚本&#xff09;配套文档&#xff08;LWPPT开题报告/任务书&#xff09;远程调试控屏包运行一键启动项目&…...

微控制器自检技术:从原理到实践,构建嵌入式系统的可靠性基石

1. 为什么微控制器自检不是“可有可无”的选项&#xff1f;如果你是一名嵌入式开发者&#xff0c;或者你的产品里用到了单片机&#xff0c;那你一定遇到过这样的场景&#xff1a;产品在实验室里跑得好好的&#xff0c;一到客户现场就莫名其妙死机&#xff1b;或者设备运行了几个…...

ESXi 8.0U3i 新版本深度解析|官方原版核心优势 + 部署指南,稳定运维首选

随着企业虚拟化、私有云部署需求的不断升级&#xff0c;一款稳定、安全、可追溯的底层虚拟化系统&#xff0c;成为数据中心、机房运维与合规生产的核心诉求。VMware ESXi 8.0U3i&#xff08;版本 8.0U3i-25205845&#xff09;作为 8.0 系列 2026 年最新推出的稳定版本&#xff…...

移动篇:WMS里的“乾坤大挪移”——移库、补货、冻结全解析

WMS里的“乾坤大挪移”——移库、补货、冻结全解析 摘要&#xff1a;货物入库后&#xff0c;不是“一放了之”。库位要优化、库存要周转、临期品要管理……这就涉及WMS中的“库存移动”操作。移库、补货、冻结分别解决什么问题&#xff1f;什么场景下会用到&#xff1f;本文带你…...

OpenClaw自动化配置实战:从入门到精通,打造高效工作流

1. 项目概述与核心价值最近在折腾开源自动化工具&#xff0c;发现了一个宝藏仓库&#xff1a;ShuyuZ1999/awesome-openclaw-configs。这个项目乍一看名字有点长&#xff0c;但核心价值非常明确——它是一个专门为开源自动化工具OpenClaw收集、整理和分享高质量配置文件的集合。…...

3大创新突破:APK Installer如何重新定义Windows上的Android应用体验

3大创新突破&#xff1a;APK Installer如何重新定义Windows上的Android应用体验 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 在当今跨平台应用需求日益增长的背景下…...