c++ - const ref 绑定到右值的内部资源
问题描述
考虑代码:
const Resource& r = ResourceContainer("foo").myResource;
标准对 myResource 的生命周期有何规定?
类似,但不确定这是否等效:现在想象它是通过operator const Resource&()
. 这有什么区别吗?
const Resource& r = ResourceContainer("foo");
解决方案
https://en.cppreference.com/w/cpp/language/reference_initialization#Lifetime_of_a_temporary说:
每当引用绑定到临时对象或其子对象时,临时对象的生命周期就会延长以匹配引用的生命周期,但以下情况除外:
“子对象”看起来像你的情况。
推荐阅读
- python - 在 PySide2 中使用 invokeMethod 时使用 QGenericArgument / Q_ARG
- python-3.x - BeautifulSoup 未显示网站部分
- pg-dump - pg_dump 在 AgensGraph 中可用吗?
- mysql - 更新触发器导致目标表的列设置为零
- python-3.x - 散点图未在 csv 文件中的 matplotlib 中排序
- vb.net - 循环遍历表单中的所有面板
- gwt - GWT 未来计划
- json - JQ 1.5:时间戳/日期转换产生巨大的文件
- php - Laravel 5.5“MethodNotAllowedHttpException”的原因是什么
- dronekit-python - 获取ardupilot输出通道