【发布时间】:2019-02-09 08:12:26
【问题描述】:
我一直认为 lvalue 和 rvalue 中的 l 和 r 代表“左”和“右”。然而,今天,我的老师启发我,r是“参考”,这让我大吃一惊。结果,我现在很困惑,因为我不知道 lvalue 中的 l 是什么。
【问题讨论】:
-
“left”和“right”是K&R创造的本义。 (这指的是赋值的左侧和右侧。)在 C++ 中,随着事情变得更加复杂,这已经略有变化...... ;-)
-
hmm r in
rvalue不是reference否则rvalue reference将是重言式 -
刚刚发现了左值和右值:它们是由 Christopher Strachey 为 CPL [Strachey,196?] 介绍的,它是 BCPL 的祖先。 Dennis Ritchie 使用“左值”来描述 C(例如,参见 [K&R,1978]),但忽略了“右值”,考虑到“左值”和“非左值”就足够了。 在www.stroustrup.com/terminology.pdf 中。 (所以,我错了“由 K&R 创造”(完全)。)
-
不过,今天老师教我r是“参考” 是的,错了就不是启蒙,'r'不代表'参考”。
标签: c++