【c++】const引用

Hello everybody!今天给大家讲讲有关const引用部分的知识,因为这部分知识涉及到const与引用直接如何灵活的运用,且不太好理解。所以我认为讲一下这里的知识还是很有必要的!

1.权限可缩小

首先,当我们定义了a,在给a取别名时加上const。这时,b虽然是a的别名,但不能通过b改变a的值,只能通过b读取a的值。

但是a可以自己修改自己。

这样b的权限只剩下读取权限,这叫权限的缩小。

2.权限的放大

如果在定义a时,直接用const修饰。那么a就没有了修改权限,给a起的别名也自然没有修改权限,只有读取权限。因此,在给a起别名时,都需要加const,否则编译器会报错。

3.常量,临时变量不可修改

这里的意思是直接给一个常量起别名,这里需要加const,因为常量不可修改。

这里,a+b这个表达式的值是临时变量,临时变量不可修改,需要加const。

此外,在这类数据类型不匹配时,会取a的整数部分作为一个临时变量储存起来。然后再把这个临时变量赋值给x。

由于在赋值过程中因为类型转换会出现临时变量,临时变量不可修改,需要加上const。

此外,这种情况也是如此。在判断i与j是否相等时,需要对j进行整型提升,当它们都是int型时才有可比性。

但是在j整型提升的过程中,不是直接把j提升到4个字节,编译器不会改变j的存储空间大小。而是生成一个数值与j相等的整型的临时变量,让这个临时变量与i比较!

既然会生成临时变量,就需要加const,否则编译器会报错。

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

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

相关文章

人工智能学习与实训笔记(二):神经网络之图像分类问题

人工智能专栏文章汇总:人工智能学习专栏文章汇总-CSDN博客 目录 二、图像分类问题 2.1 尝试使用全连接神经网络 2.2 引入卷积神经网络 2.3 分类函数Softmax 2.4 交叉熵损失函数 2.5 学习率优化算法 2.6 图像预处理算法 2.6.1 随机改变亮暗、对比度和颜色等 …

这才是大学生该做的副业,别再痴迷于游戏了!

感谢大家一直以来的支持和关注,尤其是在我的上一个公众号被关闭后,仍然选择跟随我的老粉丝们,你们的支持是我继续前行的动力。为了回馈大家长期以来的陪伴,我决定分享一些实用的干货,这些都是我亲身实践并且取得成功的…

将QStringList按指定分隔符连接为一个字符串

通过使用QStringList类提供的**join()**函数&#xff0c;我们可以直接将字符串列表strList按照指定的separator分隔符连接起来&#xff0c;无需手动遍历和拼接字符串。 QStringList strList{“hello”,“world”,“c”,“c#”}; qDebug()<< strList.join(“\”); 输出&am…

Codeforces Round 924 (Div. 2) 题解 A~D | JorbanS

A - Recovering a Small String string solve() {cin >> n >> m;if (n < m) swap(n, m);if (n & 1 && m & 1) return no;if (m & 1 && n m << 1) return no;return yes; }B - Make Equal 由于排列 1 ∼ n 1\sim n 1∼n 均…

scoped实现原理

scoped实现原理 为组件实例生成一个唯一标识&#xff0c;给组件中的每个标签对应的dom元素添加一个标签属性&#xff0c;data-v-xxxx给<style scoped>中的每个选择器的最后一个选择器添加一个属性选择器&#xff0c;原选择器[data-v-xxxx]&#xff0c;如&#xff1a;原选…

Typora的下载安装(文末有安装包,2024亲测可用)

一、安装步骤 1、首先下载安装包&#xff0c;解压到你的目录下面 2、进入到解压后的文件夹下面&#xff0c;看到如下的内容&#xff1a; 3、双击exe文件开始安装&#xff0c;选择安装目录&#xff0c;并记下安装地址&#xff01;&#xff01;&#xff01; 选择创建桌面快捷方…

2024年腾讯云4核8G12M轻量应用服务器测评,2月更新

4核8G服务器支持多少人同时在线访问&#xff1f;阿腾云的4核8G服务器可以支持20个访客同时访问&#xff0c;关于4核8G服务器承载量并发数qps计算测评&#xff0c;云服务器上运行程序效率不同支持人数在线人数不同&#xff0c;公网带宽也是影响4核8G服务器并发数的一大因素&…

树和二叉树的基本知识

一、树的概念及结构 1.树的概念 树是一种 非线性 的数据结构&#xff0c;它是由 n &#xff08; n>0 &#xff09;个有限结点组成一个具有层次关系的集合。 把它叫做树是因 为它看起来像一棵倒挂的树&#xff0c;也就是说它是根朝上&#xff0c;而叶朝下的 。 有一个 特殊…

2024春节过后,抖店爆款出单类目产品,应季产品需要提前布局

我是王路飞。 之前给你们强调过&#xff0c;“应季品”是最容易爆单的产品类型&#xff0c;没有之一。 那么在2024年春节刚过的现在&#xff0c;当别人还沉浸在过年的氛围中时&#xff0c;有心的商家早就开始布局未来三个月的爆款类目和产品了。 今天的内容&#xff0c;就给…

软件实例分享,乒乓球俱乐部会员系统管理软件教程

软件实例分享&#xff0c;乒乓球俱乐部会员系统管理软件教程 一、前言 以下软件程序教程以 佳易王乒乓球馆计时计费软件V17.0为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 多种计费方式&#xff0c;可以按单价&#xff0c;也可以按时间段 可…

Eureka和Nacos

Spring Cloud提供了多种服务注册和发现的解决方案&#xff0c;Eureka和Nacos是其中两个非常流行的选项。下面&#xff0c;我们将深入探索这两种注册中心的工作原理、配置和使用方法。 Eureka Eureka是Netflix开发的服务发现框架&#xff0c;它包括两个部分&#xff1a;Eureka…

2942. 查找包含给定字符的单词【简单】

2942. 查找包含给定字符的单词【简单】 题目描述&#xff1a; 给你一个下标从 0 开始的字符串数组 words 和一个字符 x 。 请你返回一个 下标数组 &#xff0c;表示下标在数组中对应的单词包含字符 x 。 注意&#xff1a;返回的数组可以是 任意 顺序 示例 1&#xff1a; 输…

vue3 Element Plus 基于webstorm练习

提要 vue是前端框架&#xff0c;Elemen是组件库。前端框架和组件库的区别与联系 nodejs 脚本语言需要一个解析器才能运行&#xff0c;JavaScript是脚本语言&#xff0c;在不同的位置有不一样的解析器&#xff0c;如写入html的js语言&#xff0c;浏览器是它的解析器角色。而对…

python in Vscode

背景 对于后端的语言选择&#xff1a; python&#xff0c;java&#xff0c;JavaScript备选。 选择Python 原因&#xff1a;可能是非IT专业的人中&#xff0c;会Python的人比较多。 目的 之前使用的IDE是VSCODE&#xff0c;在WSL的环境下使用。现在需要在在WSL的VSCODE下使…

【Java程序员面试专栏 Java领域】Java Spring框架 核心面试指引

关于Java Spring框架部分的核心知识进行一网打尽,主要包括Spring框架中的重点概念IOC和AOP,以及SpringBoot的自动装配机制,SpringMVC的核心执行流程,通过一篇文章串联面试重点,并且帮助加强日常基础知识的理解,全局思维导图如下所示 基础概念 Spring框架的基本概念,S…

浅谈语义分割、图像分类与目标检测中的TP、TN、FP、FN

语义分割 TP&#xff1a;正确地预测出了正类&#xff0c;即原本是正类&#xff0c;识别的也是正类 TN&#xff1a;正确地预测出了负类&#xff0c;即原本是负类&#xff0c;识别的也是负类 FP&#xff1a;错误地预测为了正类&#xff0c;即原本是负类&#xff0c;识别的是正类…

秒懂百科,C++如此简单丨第二十一天:栈和队列

目录 前言 Everyday English 栈&#xff08;Stack&#xff09; 图文解释 实现添加删除元素 实现查看清空栈 完整代码 运行示例 栈的选择题 队列&#xff08;Queue&#xff09; 图文解释 队列的基本用法 完整代码 运行结果 队列的好处 结尾 前言 今天我们将…

java 培训班预定管理系统Myeclipse开发mysql数据库web结构jsp编程servlet计算机网页项目

一、源码特点 java 培训班预定管理系统是一套完善的java web信息管理系统 采用serlvetdaobean&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&#xf…

139.单词拆分【leetcode】/动态规划

139.单词拆分 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。如果可以利用字典中出现的一个或多个单词拼接出 s 则返回 true。 注意&#xff1a;不要求字典中出现的单词全部都使用&#xff0c;并且字典中的单词可以重复使用。 示例 1&#xff1a; 输入: s “leetco…

【SpringBoot3】从重构HelloWorld看Spring的作用

在我们学习一门新技术的时候,总是先运行出一个基本的程序来输出“Hello World”,如果成功了, 说明我们的开发环境基本就绪了,我们也像婴儿走路一样,能走第一步了。接下来我们就逐步改造一个最基本的HelloWorld来一步步分析Spring到底帮助我们做 了什么。 目录 第一步:输…