每天学一点C++ —— 左值右值
1.左值是拥有标识的表达式右值是可以被移动的表达式分为纯右值和亡值2.const 左值引用 const T 能绑定左值lvalue、纯右值pvalue、亡值xvalue非模板情景下的普通右值引用T 能绑定纯右值、亡值3.const T 绑定临时对象时会延长临时对象的生命周期原本临时对象的生命周期随着表达式的结束会自动销毁但是被 const 左值引用绑定后这个生命周期随着这个引用对象的结束才结束但是延长生命周期的对象只能是被直接绑定的对象如果是对象成员并不会延长生命周期随着对象销毁对象成员依然会被销毁此时 const T 引用对象还存在但是被绑定的对象却不存在了会发生悬垂引用4.T 只能绑定非 const 左值因为T 默认能通过这个引用对象修改被绑定的对象常量左值不能被修改所以不能绑定若允许绑定纯右值、亡值存在后续引用访问已销毁对象的风险引发未定义行为。5.程序直接产生的临时实体一定是右值纯右值亡值 (xvalue) 归类属于右值但亡值不一定是临时对象。6.亡值并不是一个变量比如string s hellos是左值move(s)这个表达式是亡值属于右值它虽然有内存地址但是语法上不允许取所以属于右值。区分左值和右值的核心就是能否取地址这个是快速判断方法不是规范定义不能取地址并不代表没有内存空间7.不加 const 的临时对象本身允许就地修改调用非 const 成员函数但是语法禁止T绑定临时对象防止后续引用指向已经销毁的临时造成 悬垂引用。8.string s2 move(s)s对象本体分配在栈对象内部存有指向堆内存的指针堆内存存放字符串字符。移动构造时新对象s2复制源对象s的指针、长度等信息让s2内部指针指向原来的堆缓冲区随后将s内部指针置空。堆内存只有一份完成资源所有权转移无需拷贝字符深拷贝就是有两份堆内存。

相关新闻

深度解析MRIcroGL:如何用Python脚本实现医学影像三维可视化自动化

深度解析MRIcroGL:如何用Python脚本实现医学影像三维可视化自动化

深度解析MRIcroGL:如何用Python脚本实现医学影像三维可视化自动化 【免费下载链接】MRIcroGL v1.2 GLSL volume rendering. Able to view NIfTI, DICOM, MGH, MHD, NRRD, AFNI format images. 项目地址: https://gitcode.com/gh_mirrors/mr/MRIcroGL MRIcroG…

2026/8/2 13:18:15阅读更多 →
深度解析:React的事件与普通HTML事件有什么区别?

深度解析:React的事件与普通HTML事件有什么区别?

一、React事件系统概述 1.1 什么是React事件 React事件是React在原生DOM事件基础上封装的一套跨浏览器的事件处理机制,称为SyntheticEvent(合成事件)。它在底层使用事件委托的方式将事件统一绑定到容器节点上,再通过依赖注入与事件插件机制进行分发。Rea…

2026/8/2 13:18:15阅读更多 →
React框架对比原生开发:优缺点深度解析与选型指南

React框架对比原生开发:优缺点深度解析与选型指南

一、React框架与原生开发:基础概念与核心差异 1.1 React框架简介与发展历程 React是由Facebook(现Meta)于2013年开源的一款用于构建用户界面的JavaScript库。其核心思想是声明式编程与组件化开发,通过虚拟DOM(Virtual DOM)机制实现高效的UI更新。React并…

2026/8/2 13:18:15阅读更多 →
Day4日志

Day4日志

#include <stdio.h>int main(void) {int a;float b;scanf("%d %f",&a,&b);printf("%d %.2f", a,b);return 0; }今日整理的是输入输出函数的代码上面的代码是要求输入一个整数以及一个浮点数&#xff0c;通过scanf读取再通过printf输出scanf函…

2026/8/2 16:03:30阅读更多 →
Czkawka视频查重工具:3步轻松清理重复视频,释放硬盘空间

Czkawka视频查重工具:3步轻松清理重复视频,释放硬盘空间

Czkawka视频查重工具&#xff1a;3步轻松清理重复视频&#xff0c;释放硬盘空间 【免费下载链接】czkawka Multi functional app to find duplicates, empty folders, similar images etc. 项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka 还在为电脑里堆积如…

2026/8/2 16:03:30阅读更多 →
2024接口测试面试全攻略:从工具使用到框架设计的深度解析

2024接口测试面试全攻略:从工具使用到框架设计的深度解析

1. 项目概述&#xff1a;一份能让你脱颖而出的接口测试面试指南又到了金三银四、金九银十的招聘旺季&#xff0c;后台和社群里关于面试的咨询又多了起来。最近几年&#xff0c;无论是校招还是社招&#xff0c;接口测试几乎成了软件测试工程师岗位的必考项。我发现很多朋友&…

2026/8/2 16:03:30阅读更多 →
3步极速上手:用MouseClick鼠标连点器解放你的双手

3步极速上手:用MouseClick鼠标连点器解放你的双手

3步极速上手&#xff1a;用MouseClick鼠标连点器解放你的双手 【免费下载链接】MouseClick &#x1f5b1;️ MouseClick &#x1f5b1;️ 是一款功能强大的鼠标连点器和管理工具&#xff0c;采用 QT Widget 开发 &#xff0c;具备跨平台兼容性 。软件界面美观 &#xff0c;操作…

2026/8/2 16:03:30阅读更多 →
2026华为OD面试题060:亲子游戏

2026华为OD面试题060:亲子游戏

题目描述 宝宝和妈妈参加亲子游戏,在一个 N*N 的格子地图上,宝宝和妈妈抽签决定各自的位置,地图上每个格子有不同的糖果数量,部分格子有障碍物。 游戏规则是妈妈必须在最短的时间(每个单位时间只能走一步)到达宝宝的位置,路上的所有糖果都可以拿走,不能走障碍物的格子…

2026/8/2 16:03:30阅读更多 →
Cadence Allegro封装库路径设置与管理:从原理到实战,解决PCB设计核心痛点

Cadence Allegro封装库路径设置与管理:从原理到实战,解决PCB设计核心痛点

你是不是也遇到过这样的场景&#xff1a;在Cadence Allegro中打开一个PCB设计文件&#xff0c;准备放置一个关键的BGA芯片&#xff0c;却弹出一个令人崩溃的提示——“找不到封装库路径”。或者&#xff0c;团队协作时&#xff0c;你精心绘制的封装&#xff0c;同事那边却死活调…

2026/8/2 16:01:29阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起&#xff1a;为什么我们需要互相关几年前&#xff0c;我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号&#xff0c;理论上它们接收到的声音波形应该非常相似&#xff0c;只是由于麦克风位置不同&#xff…

2026/8/2 0:00:10阅读更多 →
限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AI模板批量生成的核心价值与落地全景 AI模板批量生成正从实验性工具演进为现代软件工程的关键基础设施。它通过语义理解、上下文感知与结构化约束&#xff0c;将重复性高、模式明确的代码/文档/配置生成…

2026/8/2 0:00:12阅读更多 →
如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页&#xff1a;Web Archives浏览器扩展终极指南 【免费下载链接】web-archives Browser extension for viewing archived and cached versions of web pages, available for Chrome, Edge and Safari 项目地址: https://gitcode.com/gh_mirrors/we/web-a…

2026/8/2 0:00:13阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起&#xff1a;为什么我们需要互相关几年前&#xff0c;我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号&#xff0c;理论上它们接收到的声音波形应该非常相似&#xff0c;只是由于麦克风位置不同&#xff…

2026/8/2 0:00:10阅读更多 →
限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AI模板批量生成的核心价值与落地全景 AI模板批量生成正从实验性工具演进为现代软件工程的关键基础设施。它通过语义理解、上下文感知与结构化约束&#xff0c;将重复性高、模式明确的代码/文档/配置生成…

2026/8/2 0:00:12阅读更多 →
如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页&#xff1a;Web Archives浏览器扩展终极指南 【免费下载链接】web-archives Browser extension for viewing archived and cached versions of web pages, available for Chrome, Edge and Safari 项目地址: https://gitcode.com/gh_mirrors/we/web-a…

2026/8/2 0:00:13阅读更多 →
无损视频剪辑终极指南:如何实现快速高效的多媒体处理

无损视频剪辑终极指南:如何实现快速高效的多媒体处理

无损视频剪辑终极指南&#xff1a;如何实现快速高效的多媒体处理 【免费下载链接】lossless-cut The swiss army knife of lossless video/audio editing 项目地址: https://gitcode.com/gh_mirrors/lo/lossless-cut 在数字媒体创作领域&#xff0c;视频编辑处理的质量损…

2026/8/2 1:29:34阅读更多 →
AI辅助本科论文写作:8大工具评测与高效使用指南

AI辅助本科论文写作:8大工具评测与高效使用指南

1. 本科生论文写作的AI辅助现状本科毕业论文是每个大学生必须跨越的一道坎。记得我当年写论文时&#xff0c;光是文献检索就花了整整两周时间&#xff0c;打印的参考文献堆满了半个书桌。如今AI技术的发展为学术写作带来了革命性变化&#xff0c;合理使用这些工具可以节省80%以…

2026/8/2 2:32:55阅读更多 →
如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手

如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手

如何快速配置大麦自动抢票系统&#xff1a;从零开始搭建Python抢票助手 【免费下载链接】ticket-purchase 大麦自动抢票&#xff0c;支持人员、城市、日期场次、价格选择 项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchase 还在为抢不到热门演唱会门票…

2026/8/2 2:09:20阅读更多 →