4

如果std::move()在没有定义移动构造函数的用户定义对象上调用会发生什么?是简单的复制吗?

4

1 回答 1

5

是的,移动将退回到复制。这就是像 std::vector 这样的标准容器如何在移动方面实现大小调整,但仍与只能复制的类兼容。

但是,该类可能具有隐式定义的移动构造函数 - 请参阅本指南。http://en.cppreference.com/w/cpp/language/move_constructor#Implicitly-declared_move_constructor

于 2013-12-10T22:02:22.310 回答