首页 > 其他 > 详细

error C2662 无法将左值绑定到右值 —— 变量永远是左值,即使它的类型为右值引用

时间:2016-03-04 22:21:57      阅读:896      评论:0      收藏:0      [点我收藏+]
 1 #include <utility>
 2 
 3 struct A
 4 {
 5     void f() && { }
 6 };
 7 
 8 void g(A &&a)
 9 {
10     a.f();        //error, a是左值
11     std::move(a).f();        //fine
12 }
13 
14 int main() { return 0; }

其实有了右值表示临时对象这一观察结果,变量是左值这一特性并不令人惊讶。毕竟,变量是持久的,直到离开作用域时才被销毁。(《C++ Primer》)

 

 

error C2662 无法将左值绑定到右值 —— 变量永远是左值,即使它的类型为右值引用

原文:http://www.cnblogs.com/qzki/p/5243581.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!