C++ 概念: MoveConstructible (C++11 起)
来自cppreference.com
指定类型示例能从右值参数构造。
[编辑] 要求
类型 T
满足可移动构造 (MoveConstructible
) ,若
给定
-
rv
,T
类型的右值表达式 -
u
,任意标识符
下列表达式必须合法且拥有其指定的效应
表达式 | 后置条件 |
---|---|
T u = rv; | u 的值等于 rv 在初始化前的值。 rv 的新值未指定。
|
T(rv) | T(rv) 的值等于 rv 在初始化前的值。 rv 的新值未指定。
|
[编辑] 注意
类不必实现移动构造函数以满足此要求:接收 const T&
参数的复制构造函数能绑定右值表达式。
若可移动构造 (MoveConstructible) 类实现移动构造函数,则它亦可实现移动语义,以从构造后 rv
的值未指定的事实中获利。
[编辑] 参阅
(C++11) (C++11) (C++11) |
检查类型是否能从右值引用构造 (类模板) |