标题:
c++ 中的 rvalue ,lvalue
[打印本页]
作者:
admin
时间:
2019-6-8 20:55
标题:
c++ 中的 rvalue ,lvalue
void f(const A & a)
{
不能改
绑定到右值,退出scope,即退出函数销毁
绑定到左值,退出不析构
}
A a1;
f(a1); // 左值调用
f(A()); // 右值调用
void f(A & a)
{
能改;
绑定绑定到左值,
退出不析构
}
f(a1);// ok
f(A());// error
void f(A && a)
{
能改;
只能绑定绑定右值,
退出析构
}
f(a1);// error
f(A());// ok
作者:
admin
时间:
2019-6-8 23:28
1.在 c++ 11 stl 的所有容器,已经实现了复制构造各移动构造函数,
2.在c++11中,传值调用,成本也不会很高
3.自定义函数中,要求右值引用传递的机会不多,右值传递的好处,是便stl效率大增
4. std::move作用是用移动构造函数创建一个临时对象
欢迎光临 杰表技术论坛 (http://bbs.jatools.com/)
Powered by Discuz! 6.1.0