我已经阅读了 std::move() 的一些(伪)实现。所有这些都只是丢弃参数的引用,然后将其作为右值引用返回。
除此之外,它没有做任何其他事情。
不过,我很好奇:1.它的作用是否不止于此。2. 标准是否明确指出,以便调用者应该意识到副作用。
在《C++ 编程语言》第四版一书中,它指出“move(x) 将 x 标记为销毁,因此应谨慎使用 move(x)”。
这是否意味着标准存在副作用,因此编译器可以进行某些优化?
提前致谢。
| 归档时间: |
|
| 查看次数: |
1372 次 |
| 最近记录: |