int &refVal4 = 10; 错误
const int &r2 = 42; 合法
const auto &j = 42; 合法
对常量的引用,即常量引用,可以绑定非常量的对象,字面值,一般表达式。
const int &r2 = 42; 是 合法的,因为 等效于
const int tmp = 42; // 由字面值生成一个临时的整型常量
const int &r2 = tmp; // 让r2绑定这个临时量
int &refVal4 = 10; 是非法的, 因为 refVal4 不是常量,就 允许对refVal4赋值。而 10 是 是字面值常量,无法修改。