首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >引用如何绑定到prvalue?

引用如何绑定到prvalue?
EN

Stack Overflow用户
提问于 2022-02-15 00:55:13
回答 1查看 170关注 0票数 3

cppreference说:当引用绑定到prvalue时会创建一个临时对象。它们是指const lvalue引用和rvalue引用吗?:

当一个prvalue被物化时会创建临时对象,以便它可以作为glvalue使用,这种情况在以下情况下发生(自C++17):

  • 绑定对prvalue的引用

如果它们意味着,rvalue引用和绑定到相同类型的prvalue的const lvalue引用是否会创建一个临时的?我是说,这是真的吗?

代码语言:javascript
复制
const int &x = 10; // does this creates temporary?

int &&x2 = 10; // does this creates temporary?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-15 01:02:16

唯一允许绑定到对象rvalue (包括prvalue)的引用是rvalue引用和constvolatile lvalue引用。当这种绑定发生在prvalue上时,就会物化一个临时对象。因此,在“任择议定书”的两个例子中都出现了临时物化:

代码语言:javascript
复制
const int &x = 10;
int &&x2 = 10;

x超出范围时,第一个临时的(值为10)将被销毁。第二个临时值(也是值10,尽管可以使用x2修改其值)将在x2超出作用域时被销毁。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71119987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档