首页 > 解决方案 > 用数字初始化常量引用

问题描述

以下行的含义是什么?为什么这是允许的,因为 0 是 r 值而不是变量名?const这句话的意义何在?

const int &x = 0;

标签: c++referenceconstantsrvalue-reference

解决方案


非常量引用不能指向文字。您不能将文字绑定到对非常量的引用(因为修改文字的值不是有意义的操作),并且只有左值可以绑定到对非常量的引用。但是,您可以将文字绑定到对 const 的引用。

“常量”很重要。在这种情况下,为此目的创建了一个临时变量,它通常在堆栈上创建。


推荐阅读