左值与右值这两概念是从C语言中传承而来的,在C语言中,左值指的是既能够出现在等号左边也能出现在等号右边的变量(或表达式),右值指的则是只能出现在等号右边的变量(或表达式)。
在C++中,当一个对象被用作右值的时候,用的是对象的值(内容);当对象被用作左值的时候,用的是对象的身份(在内存中的位置)。
在需要右值的地方可以用左值来代替,但是不能把右值当做左值(位置)来使用。
当一个左值被当成右值使用时,实际使用的是它的内容(值)。
左值与右值这两概念是从C语言中传承而来的,在C语言中,左值指的是既能够出现在等号左边也能出现在等号右边的变量(或表达式),右值指的则是只能出现在等号右边的变量(或表达式)。
在C++中,当一个对象被用作右值的时候,用的是对象的值(内容);当对象被用作左值的时候,用的是对象的身份(在内存中的位置)。
在需要右值的地方可以用左值来代替,但是不能把右值当做左值(位置)来使用。
当一个左值被当成右值使用时,实际使用的是它的内容(值)。