c++ - 为什么 const 变量在 C++ 中是左值?
问题描述
我已经开始通过这个页面学习 C++ 。
右值和左值的概念让我感到困惑,尤其是这个:
注意: const 变量被认为是不可修改的左值。
我不明白 const 变量可以是左值。在实践中是否有将 const 变量用作左值的示例代码?我认为右值和不可修改的左值之间没有区别。
解决方案
假设你有这样的陈述
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;
}
推荐阅读
- c - 使用 msys shell 克隆/编译,一些文件出现 "\#include "xyz.h"
- python - Argparse 不解析布尔参数?
- javascript - ReactJS使用钩子将函数分配给变量?
- visual-studio-code - 如果自定义问题匹配器产生的问题永远无法删除或解决,那么它们的意义何在?
- java - 我的巴蒂斯。ResultMap 和属性
- r - R中的ggseasonplot,仅使用某些年份
- performance - Matlab:更快地找到 ND 矩阵中每个元素的一维线性插值节点和权重
- html - 我如何设计这个引导轮播?
- python-3.x - 如何在 anaconda 提示符下安装 Visual Studio 库?
- python - 小数点后各占一行。带有 Python 3+ 的 CSV