gpt4 book ai didi

c++ - 将右值引用分配给左值引用

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:43:10 26 4
gpt4 key购买 nike

int&& rv = 10;
int& lv = rv; //no error

这怎么可能?

这与“引用折叠规则”有关吗?

最佳答案

 int&& rv = 10; 
int& lv = rv; //no error

首先,命名对象绝不是右值。其次,由于rv命名 对象,因此它不是右值,即使它绑定(bind)到右值。由于 rv 是左值,它可以毫无问题地绑定(bind)到左值。

请注意,右值特性是表达式 的属性,而不是变量。在上面的示例中,右值是从 10 中创建的,并绑定(bind)到 rv,正如我所说,它是左值。

关于c++ - 将右值引用分配给左值引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37894068/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com