std::experimental::ranges:: MoveConstructible
From cppreference.net
<
cpp
|
experimental
|
ranges
|
ヘッダーで定義
<experimental/ranges/concepts>
|
||
|
template
<
class
T
>
concept
bool
MoveConstructible
=
|
(ranges TS) | |
MoveConstructible
の概念は、
T
が参照型である場合、またはその型のオブジェクトが右辺値から直接初期化とコピー初期化の両方の文脈で通常のセマンティクスで構築可能なオブジェクト型である場合に満たされます。
より正確には、
T
がオブジェクト型である場合、
MoveConstructible<T>
は以下の条件が与えられたときにのみ満たされます。
-
rv, 型Tの右辺値、および -
u2, 型Tのrvと等しい別個のオブジェクト、
以下が真実です:
-
定義
T u
=
rv
;
の後、
uはu2と等しい; -
T{rv}はu2と等しい;および -
Tがconst修飾されていない場合、rvの結果状態(上記いずれかの定義/式が評価された後)は有効だが未指定である;そうでなければ、変更されない。
関連項目
|
(C++11)
(C++11)
(C++11)
|
型が右辺値参照から構築可能かどうかをチェックする
(クラステンプレート) |