你怎么记得rvalue,lvalue等之间的区别?

Cor*_*lks 9 c++ mnemonics

这个问题是很大的,因为它对之间有什么区别答案rvalue,lvalue,xvalue,glvalue,和prvalue.最佳答案对每个答案都有不错的解释,当我阅读它们时,我理解它们之间的差异.但是,我很难将它们直接放在脑海中,每当有人使用这些术语来提醒自己哪一个是哪个时,我都必须谷歌.

是否有任何常见的助记符或其他方式让人记住哪一个是哪个?我真的希望能够将它们全部直接放在我的脑海中,而不是像现在这样将它们混合在一起.

Pub*_*bby 9

我做了两个协会:

  • 你只能拿左值的地址
  • xvalues就是std::move表达式

如果它不是那么它可能是一个prvalue.

现在,要记住glvalues和rvalues,我只想想这个图:

lvalues和xvalues都是glvalues,而xvalues和prvalues都是rvalues.这真的是你在实践中需要知道的.

也许记住lvaluse,xvalues和prvalues在底部的助记符是单词Lower eXPRessions(它包含L,X和PR).也许不吧.