正常情况下被引用的对象改变,常量引用的值也跟着改变。i和j是同一个对象,所以是同步的:

int i = 42;
const int& j = i;
i = 43;
cout << j << endl;
cout << i << endl;
// i == j == 42;

但存在类型转换时,常量引用绑定的是double到int隐式转换后的临时int对象。i和j不是一个对象,所以数据不同步:

double i = 42.5;
const int& j = i;//发生隐式转换,j引用了临时int对象
i = 43;
cout << j << endl;
cout << i << endl;
// j == 42; i == 43;

因为上述道理,所以下面的i和j是同一个对象,所以是同步的:

int i = 42.5;//发生隐式转换,i引用了临时int对象
const int& j = i;
i = 43;
cout << j << endl;
cout << i << endl;
// i == j == 42;

c++常量引用,通过被引用变量修改数据无法同步到引用的更多相关文章

  1. Oracle触发器修改数据时同步执行插入该条数据

    原创:lixx ---从UNWIREDATA 表中查询数据,如果该表中地磁状态发生改变(CARDSTATE)执行插入到MAINTABLE 表中---根据唯一值ERID判断,如果ERID值存在,修改该条 ...

  2. php中引用&的真正理解-变量引用、函数引用、对象引用

    php的引用(就是在变量或者函数.对象等前面加上&符号) //最重要就是 删除引用的变量 ,只是引用的变量访问不了,但是内容并没有销毁 在PHP 中引用的意思是:不同的名字访问同一个变量内容. ...

  3. [C++]变量存储类别,指针和引用,类与对象,继承与派生的一些摘要

    C++中共有四种存储类别标识符:auto/static/register/extern 1.auto 函数或分程序内定义的变量(包括形参)可以定义为auto(自动变量).如果不指定存储类别,则隐式定义 ...

  4. php的引用&(就是在变量或者函数、对象等前面加上&符号)

    官方文档: 1.引用是什么:http://www.php.net/manual/zh/language.references.whatare.php 2.引用做什么:http://www.php.ne ...

  5. JavaScript中变量的LHS引述和RHS引用

    JavaScript中变量的LHS引述和RHS引用 www.MyException.Cn  网友分享于:2015-02-04  浏览:0次 JavaScript中变量的LHS引用和RHS引用 在Jav ...

  6. 【DB2】SQL0501N FETCH 语句或 CLOSE 语句中指定的游标尚未打开,或者游标标量函数引用中的游标变量尚未打开。 SQLSTATE=24501

    在DB2中建立存储过程时使用了隐式游标,在调用的时候报错如下: SQL0501N  FETCH 语句或 CLOSE 语句中指定的游标尚未打开,或者游标标量函数引用中的游标变量尚未打开.  SQLSTA ...

  7. 1.1.08- Python变量的关联,绑定,引用

    Python中关联.绑定,引用的含义: 在Python中,变量没有类型 关联/绑定/引用都是指变量和一个对象的关联关系. 在交互模式下查看变量的绑定关系: >>>help(" ...

  8. 弱引用?强引用?未持有?额滴神啊-- Swift 引用计数指导

    ARC ARC 苹果版本的自动内存管理的编译时间特性.它代表了自动引用计数(Automatic Reference Counting).也就是对于一个对象来说,只有在引用计数为0的情况下内存才会被释放 ...

  9. 一. JVM发展史,运行时数据区域,四大引用

    一.JVM的出现 JVM将字节码解释成不同os下的机器指令,有了jvm,java语言在不同平台上运行时不需要重新编译 虚拟机发展史 (1)Sun Classic classic jvm要么采用纯解释器 ...

  10. 为啥final类型的map或者arraylist可以修改数据 而final类型的String变量不可以修改数据呢

    比如 final   Map  map =new  HashMap();    可以往map里put数据final   List  list =new  ArrayList();   可以往list里 ...

随机推荐

  1. C++顺序结构(1)任务

    1.下载并观看视频(照着做,多看几遍) https://www.jianguoyun.com/p/DWCNkNEQi8_wDBj5ptYFIAA 2.两项照着做的任务

  2. 有关终端Github无法访问,connection timed out:443等问题

    有关终端Github无法访问,connection timed out:443等问题 SSL_connect: Operation timed out in connection to github. ...

  3. django数据库反向迁移

    目录 django数据库反向迁移 步骤一:连接MySQL 方式一:使用pymysql连接 方式二:使用mysqlclient连接 步骤二:迁移数据库 正向迁移(通过类创建表) 反向迁移(通过表创建类) ...

  4. Qt/C++如何选择使用哪一种地图内核/不同地图的优缺点/百度高德腾讯地图/天地图/谷歌地图

    一.前言说明 最近花了大半年时间,专门研究这个地图组件,几乎把各种地图的官网的手册翻了个遍,亲自写代码验证了一遍,各种API函数接口和功能全部实战一遍,然后从中提取共性,做出了基类,以及通用函数类,子 ...

  5. Qt编写安防视频监控系统61-子模块5设备控制

    一.前言 设备控制模块,和云台控制模块都是用的onvif协议通信,可以对选中的通道的摄像机(ONVIF协议),进行获取参数.设置参数.手动校时.重启设备.抓拍图片.模拟报警等操作,可以对摄像机的明亮度 ...

  6. Qt编写安防视频监控系统28-摄像机点位

    一.前言 摄像机点位的功能主要是在图片地图和在线离线地图上设置对应摄像机的位置,然后双击可以实时预览对应摄像机的视频,在图片地图上拖动摄像机图标到对应位置,系统会自动保存位置信息,在网页地图上的摄像机 ...

  7. OGC——WFS服务

    一.WFS简介    OGC的WMS和WMTS规范都是有关空间数据显示的标准,而WFS(Web Feature Service)则允许用户在分布式的环境下通过HTTP对空间数据进行增.删.改.查. 具 ...

  8. Wasm在即时通讯IM场景下的Web端应用性能提升初探

    本文由得物技术WWQ分享,原题"基于IM场景下的Wasm初探:提升Web应用性能",下文进行了排版和内容优化. 1.什么是Wasm Wasm,全称 WebAssembly,官网描述 ...

  9. biancheng-socket编程

    http://c.biancheng.net/socket/ 网络编程就是编写程序使两台联网的计算机相互交换数据.这就是全部内容了吗?是的!网络编程要比想象中的简单许多.那么,这两台计算机之间用什么传 ...

  10. 压力测试-jmeter-copy

    1. 场景描述 新申请的服务器,要压测下python算法程序最多能执行多少条数据,有几年没用压力测试工具-jmeter了,重新下载了最新版本,记录下,也希望能帮到准备使用jmeter做压测的朋友. 2 ...