std::move_constructible — cppreference.com
Материал из cppreference.com
<tbody> </tbody>
| Определено в заголовочном файле |
||
|
|
(начиная с C++20) | |
Концепт move_constructible выполняется, если T является ссылочным типом, или это объектный тип, в котором объект этого типа может быть создан из правосторонней ссылки того-же типа, как при прямом, так и при копирующем контексте инициализации с обычной семантикой.
Семантические требования
Если T является объектным типом, тогда move_constructible<T> моделируется только если даны
rv, правостороннее значение типаT, иu2, конкретный объект типаT, равныйrv,
следующее верно:
- После определения
T u = rv;,uравноu2; T(rv)равноu2; и- Если
Tне является const-квалифицированным, тогдаrvконечное состояние (после того, как определение/выражение оценивается в любом из случаев выше) допустимо, но неопределено; иначе он остаётся неизменным.