首页 > 解决方案 > 为什么 const 变量在 C++ 中是左值?

问题描述

我已经开始通过这个页面学习 C++ 。

右值和左值的概念让我感到困惑,尤其是这个:

注意: const 变量被认为是不可修改的左值。

我不明白 const 变量可以是左值。在实践中是否有将 const 变量用作左值的示例代码?我认为右值和不可修改的左值之间没有区别。

标签: c++

解决方案


假设你有这样的陈述

const int con=10;     //con is non-modifiable l-value
  • 你不能修改 con 的值。
  • 但是 con 有地址(&con)。

所以它是不可修改的 l 值。

代码:

#include<iostream>

int main(void)
{
    const int con=10; //con is non-modifiable l-value
    std::cout<<con;
}

推荐阅读