在《C++ Primer 中文版(第五版)》(电子工业出版社)中的说法有:
- 当一个对象被用作右值的时候,用的是对象的值(内容);当对对象被用作左值的时候,用的是对象的身份(在内存中的位置)。
而我在再次学习计算机原理中的“代码区、常量区、全局(静态)区、堆区、栈区”后想到的一个新理解是:
- 右值是不可控的,左值是可控的。
右值,要么在程序一开始运行以后就已经确定了,要么是程序运行到一定程度,系统就会确定的值,在值生成以后无法再次改变这个内容(当然也包括临时值);而左值可以随意改变。
原文地址:https://www.cnblogs.com/pureLaw/p/11192322.html
时间: 2024-11-05 21:41:02