在C++11中所有的值必属于左值、右值两者之一。

C++98
左值(lvalue),可以放在赋值运算符=左边的变量或者表达式,有名字,可以取地址。
右值(rvalue),临时变量值(非引用返回的函数返回值、表达式等)或者不跟对象关联的字面量值(注意:字符串字面值是左值,唯一例外),没有名字,不能取地址。
C++11
对右值进行了扩充,右值分为纯右值(prvalue,Pure Rvalue)将亡值(xvalue,eXpiring Value)
纯右值就是C++98中的右值概念。
将亡值则是C++11新增的跟右值引用相关的表达式,这样表达式通常是将要被移动的对象。

官方说明文档

Value categories

C++11 左值 右值相关推荐

  1. C++11新特性之左值右值及移动语句与完美转发

    C左值右值 左值和右值的由来 什么是左值和右值 左值右值的本质 引用 左值引用 右值引用 移动语句与完美转发 移动语句 实现移动构造函数和转移赋值函数 stdmove 完美转发Perfect Forw ...

  2. C++11中的右值引用(对比左值引用和常引用)、移动构造函数和引用标识符

    Hello!各位同学们大家好!逗比老师最近说起来还是挺尴尬的,为什么这么说呢?因为以前我对自己的C++水平还是相当自信的,经常以"精通"来自我评价.但是最近发现自己好像对C++11 ...

  3. C++基础知识(二)--左值右值--逻辑表达式求值优化--逗号运算符与表示式--输入输出格式控制...

    :一.C++左值右值概念 左值:c++将变量名代表的单元称为左值,而将变量的值称为右值,左值必须是内存中可以访问且可以合法修改的对象,因此只能是变量名,而不能是常量或表达式.即左值可以寻址. 右值:将 ...

  4. C、C++差异之左值右值

    C与C++在语法细节上还是有一些差异的,虽然一般情况下可能这些差异不足以造成结果的区别,但有些代码确实会有影响. 这次,主要总结下左值右值的差异. 在C中,很多左值运算符的结果都不再是左值,然而在C+ ...

  5. C++11中的右值引用

    http://www.cnblogs.com/yanqi0124/p/4723698.html 在C++98中有左值和右值的概念,不过这两个概念对于很多程序员并不关心,因为不知道这两个概念照样可以写出 ...

  6. C++ C++11新特性--右值引用

    左值与右值 在C语言中,左值和右值一般有两种区分的方法.可以出现在赋值符号"="的两边的值为左值,只能出现在赋值符号"="的右边的值为右值:还有一种说法是能取地 ...

  7. C++11标准之右值引用(ravalue reference)

    C++11标准之右值引用(ravalue reference) 1.右值引用引入的背景 临时对象的产生和拷贝所带来的效率折损,一直是C++所为人诟病的问题.但是C++标准允许编译器对于临时对象的产生具 ...

  8. C++11特性《 右值引用-<完美转发>、lambda表达式》

    1.右值引用 1.1移动语义 如果一个类中涉及到资源管理,用户必须显式提供拷贝构造.赋值运算符重载以及析构函数,否则编译器将 会自动生成一个默认的,如果遇到拷贝对象或者对象之间相互赋值,就会出错,比如 ...

  9. c++ 左值 广义左值 右值 纯右值 将亡值

    为什么C/C++等少数编程语言要区分左右值? 历史原因: C语言作为一门古老的编程语言,其设计初衷是为了在硬件资源有限的系统上进行高效的编程,因此其语法和语义设计相对较简单.左值和右值的概念最初是由C ...

  10. java中的左值右值_快速了解C/C++的左值和右值

    最近在segmentfault上看到一个提问<c++隐式的类类型转换问题>:一时不知怎么回答,查阅相关资料后整理了本文,以供参考学习. 定义 早期的C给出的定义:左值是一个表达式,可能出现 ...

最新文章

  1. Python创建virtualenv(虚拟环境)方法
  2. AC自动机的使用案例
  3. .Net高并发解决思路(转)
  4. JS-获取当前日期-月的天数
  5. JAVA中几个常用的方法
  6. 如何在Django模板中注入全局变量
  7. iOS:Cocoa编码规范 -[译]Coding Guidelines for Cocoa
  8. 每日一题(34)—— 线程
  9. 无需担心架构演变 入云的Teradata无处不在
  10. RADIUS服务器的演变过程
  11. nes模拟器java版_fc模拟器java版
  12. MATROSKA 文件格式
  13. Ubuntu16安装搜狗拼音输入法
  14. 【雅思单词】【绿皮书】雅思单词-错词-第三遍
  15. LabVIEW串口调试助手
  16. 没有人能扼杀掉你的梦想
  17. 思科认证入门级课程介绍(二)
  18. 如何利用CRM系统做好客户关系管理?
  19. 华邦存储芯片 W25Q 系列命名规则
  20. onenote for windows 10 下载与安装

热门文章

  1. 安装Ubuntu 16.04出现的各种坑爹问题总结
  2. 通过SIM900A使用GPRS发送数据至阿里云ECS服务器
  3. 企业信息化建设中的经验
  4. 开启sketchup超速云渲染模式,文末附彩蛋!
  5. 11张图读模电、数电必备的电路基础知识
  6. Eclipse更新插件时报错解决办法
  7. 列奥纳多 • 全才 • 达 • 芬奇
  8. mysql数据库通过高德地图经纬度计算两点之间的距离
  9. 使用ADXL375Z加速度传感器数据数据不对的处理方法
  10. java毕业设计企业人事信息管理mybatis+源码+调试部署+系统+数据库+lw