这是一个简单而古老的问题。我相信它必须在其他地方问。但经过 30 多分钟的谷歌搜索后,我决定再次在这里提问。关于右值引用的大量信息让我很难找到适合这个问题的网页。
右值不能绑定左值引用的这个决定背后的原因是什么?
右值通常是即将消亡的东西或文字。如果此代码是合法的:
int &r = 5
那么您将能够修改 5,但这没有意义!引用(任何类型的)只是被引用对象的别名。
但是,对 const 的左值引用禁止对对象进行任何更改,因此您可以将它们绑定到右值。
const int &r = 5; // ok
r = 10; // compilation error
| 归档时间: |
|
| 查看次数: |
1543 次 |
| 最近记录: |