gpt4 book ai didi

c++ - 为什么++x 是左值而 x++ 是右值?

转载 作者:IT老高 更新时间:2023-10-28 11:57:10 31 4
gpt4 key购买 nike

所以我一直在阅读左值和右值,当涉及到这种分类时,我对 ++xx++ 之间的区别有点困惑.

为什么 ++x 是左值而 x++ 是右值?

最佳答案

++x 返回对您递增的对象的引用,其中 x++ 返回 x 旧值的临时拷贝。

至少这是按照惯例实现这些运算符的“正常”方式。所有内置类型都以这种方式工作。如果您已经阅读过左值/右值,那么您会看到,由于前缀运算符返回命名对象本身,它将是一个左值,而后缀运算符返回一个本地临时值的拷贝,然后将其限定为右值.

注意:另外,我们现在有 prvalues、xvalues 等,所以这些天在技术上有点复杂。看here for more info.

关于c++ - 为什么++x 是左值而 x++ 是右值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50802859/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com