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

C++(23):延长for循环临时变量生命期

C++:通过const T&延长临时对象的生命期-CSDN博客

const int& r = getS().getX();

这种形式是无法通过const T&延长临时对象的生命期的

#include <vector>
#include <string>
#include <iostream>
using namespace std;struct S
{vector<int> vec;const vector<int>& getVector() const {return vec;}
};S getS()
{S s;s.vec = {1, 2, 3, 4, 5};return s;
}int main()
{for (auto n : getS().getVector()){cout << n << " ";}cout << endl;return 0;
}

编译:g++ -O0 -g -fsanitiz

http://www.dtcms.com/a/552778.html

相关文章:

  • Android Studio gradle下载失败报错
  • 贵州 做企业网站的流程58同城最新消息招聘
  • Kubernetes 双层 Nginx 容器环境下的 CORS 问题及解决方案(极端情况)
  • Kimi发布新一代注意力架构!线性注意力实现75% KV缓存减少、6倍解码速度提升
  • 做电子商务系统网站建设wordpress图片加水印
  • 电机参数标幺化与定点计算在整数MCU上的实现
  • Rust开发之错误处理与日志记录结合(log crate使用)
  • 2025年11月1日(星期六)骑行笔架山
  • opencv 学习: 03 初识 cv:Mat
  • 数据结构(c++版):邻接矩阵的实现
  • 在华为TaiShan 200系列服务器基于CentOS 7.6/7.7创建虚拟机
  • Parallels Desktop 26.1.1 for Mac 秋叶QiuChenly中文解锁直装版,最好用的macOS虚拟机
  • Linux chmod权限速成指南
  • 企业网站建设市场的另一面写字就能赚钱做网站
  • 【已解决】解决CondaVerificationError:PyTorch安装包损坏问题
  • UI引擎里AceAbility::OnStart函数1
  • 卸载工具uninstall tool下载安装教程(附安装包)绿色版
  • Bug: 升级内核后有线网络无法使用
  • 帕金森症手绘图像分类数据集
  • 本地生活曝光缺失?GEO语义锚点来救场
  • Rust开发之Result枚举与?运算符简化错误传播
  • Rust专项——其他集合类型详解:BTreeMap、VecDeque、BinaryHeap
  • 软件开发模式架构选择
  • 网站开发设计注册注册小程序
  • Git命令(三)
  • Spring Security 新手学习教程
  • 72.是否可以把所有Bean都通过Spring容器来管
  • DevExpress WPF中文教程:Data Grid - 如何使用虚拟源?(四)
  • 车载软件需求开发与管理 --- 需求收集与整理
  • [linux仓库]线程控制[线程·叁]