C 11引入了新的值类别,其中一个是xvalue.
Stroustrup将它作为类似(im类别)的explained:“它是一个值,它具有身份,但可以从”移动“.
另一个来源,
cppreference解释:
a glvalue is an expression whose evaluation determines the identity of an object,bit-field,or function;
而xvalue是一个glvalue,所以这个声明也适用于xvalue.
现在,我认为如果xvalue有标识,那么我可以检查两个xvalues是否引用同一个对象,所以我取一个xvalue的地址.事实证明,不允许:
int main() { int a; int *b = &std::move(a); // NOT ALLOWED }
xvalue有身份是什么意思?
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。