首页 > 其他 > 详细

左值与右值

时间:2021-03-02 22:31:28      阅读:23      评论:0      收藏:0      [点我收藏+]

在C中,左值指的是既能够出现在等号左边也能出现在等号右边的表达式,右值指的则是只能出现在等号右边的表达式。

在C ++中,每个表达式都会产生一个左值或右值,因此每个表达式都称为左值或右值表达式。左值的一个示例是标识符。作为另一示例,对对象的引用是左值。每个不是左值的表达式都是一个右值。一个很好的例子是产生算术值的表达式。一种直观的方法是将表达式视为函数,然后可以将左值视为函数返回引用的结果。

例子:

  1. 下标运算符是形式 T&operator [](T *,ptrdiff_t) 的函数, 因此 A [0] 是一个左值,其中 是数组类型。

  2. 解引用运算符是形式 T&operator *(T *) 的函数, 因此 * p 是左值,其中 是指针类型。

  3. 取反运算符的形式为 T运算符-(T) ,因此 -x 是右值。

了解更多(依次阅读最好):

https://www.cnblogs.com/xzxl/p/7652612.html

https://accu.org/journals/overload/12/61/kilpelainen_227/

 

左值与右值

原文:https://www.cnblogs.com/qyse/p/14457525.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!