C++ 概念: MoveConstructible (since C++11)

来自cppreference.com
< cpp‎ | concept

 
 
C++ 的概念

|- class="t-nv-h1" | colspan="5" | 基础 |- | |- |

DefaultConstructible
CopyAssignable
CopyConstructible

|

MoveAssignable(C++11)
MoveConstructible(C++11)
Destructible

|-

|- class="t-nv-h1" | colspan="5" | 库 |- | |- |

|

NullablePointer(C++11)
Hash(C++11)
Allocator

|-

|- class="t-nv-h1" | colspan="5" | 容器 |- | |- |

|

|-

容器元素

| |- |

CopyInsertable(C++11)
MoveInsertable(C++11)

|

|-

|- class="t-nv-h1" | colspan="5" | 迭代器 |- | |- |

|

|-

|- class="t-nv-h1" | colspan="5" | 随机数 |- | |- |

SeedSequence(C++11)
RandomNumberEngine(C++11)

|

|-

|- class="t-nv-h1" | colspan="5" | 并发 |- | |- |

BasicLockable(C++11)
Lockable(C++11)
TimedLockable(C++11)

|

Mutex(C++11)
TimedMutex(C++11)

|-

|- class="t-nv-h1" | colspan="5" | 其它 |- | |- |

|

UnaryTypeTrait(C++11)
BinaryTypeTrait(C++11)
TransformationTrait(C++11)
TrivialClock(C++11)

|-

 
指定的类型的一个实例可以移动(移动)建造的。这意味着该类型的移动语义:也就是说,可以将其内部状态的相同类型的新实例,有可能最大限度地减少开销.
原文:
Specifies that an instance of the type can be move-constructed (moved). This means that type has move semantics: that is, can transfer its internal state to a new instance of the same type potentially minimizing the overhead.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 要求

类型必须符合CopyConstructible要求和/或实现以下功能:
原文:
The type must meet CopyConstructible requirements and/or implement the following functions:
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

Type::Type

Type::Type( Type&& other );

Type::Type( const Type&& other );
Type::Type( volatile Type&& other );

Type::Type( const volatile Type&& other );
(的变种之一就足够了)

移动的构造函数: constructs an instance of a type with the contents of other. The internal state of other is unspecified after the move. However, it must still be valid, that is, no invariants of the type are broken.

The following expressions must have the specified effects:

表达
原文:
Expression
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
Effects
Type a = rv;
a相当于rv,其中rv右值引用Type.
原文:
a is equivalent to rv, where rv is a 右值引用 of Type.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
Type(rv);
Type类型的对象是一个临时相当于rvrv是一个右值引用Type.
原文:
a temporary object of type Type is equivalent to rv, where rv is a 右值引用 of Type.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 另请参阅

检查对象是否声明了移动构造函数
(类模板) [edit]