Пространства имён
Варианты
Действия

Концепции C++: MoveAssignable (начиная с C++11)

Материал из cppreference.com

 
 
Концепции C++
Basic
Original:
Basic
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
MoveAssignable(C++11)
MoveConstructible(C++11)
Destructible
Библиотека-Wide
Original:
Library-Wide
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Контейнер
Original:
Container
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Контейнер элементов
Original:
Container Elements
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Iterator
Original:
Iterator
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Случайных чисел
Original:
Random Numbers
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Параллелизмом
Original:
Concurrency
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
BasicLockable(C++11)
Lockable(C++11)
TimedLockable(C++11)
Mutex(C++11)
TimedMutex(C++11)
Другое
Original:
Other
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
 
Указывает, что экземпляр типа могут двигаться назначенный (перемещен). Это означает, что тип имеет движение семантики, то есть может передать свое внутреннее состояние на другой экземпляр того же типа, потенциально уменьшая накладные расходы.
Original:
Specifies that an instance of the type can be move-assigned (moved). This means that type has move semantics: that is, can transfer its internal state to another instance of the same type potentially minimizing the overhead.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[править] Требования

Типа должны соответствовать требованиям CopyAssignable и / или осуществлять следующие функции:
Original:
The type must meet CopyAssignable requirements and/or implement the following functions:
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Type::operator=

Type& Type::operator=( Type&& other );

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

Type& Type::operator=( const volatile Type&& other );
(Одним из вариантов является достаточным)

Переместите оператор присваивания: assigns 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 function must return *this.

The following expressions must have the specified effects:

Выражение
Original:
Expression
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Effects
a = rv;
a эквивалентно rv, где a является экземпляром Type и rv является RValue ссылки из Type .
Original:
a is equivalent to rv, where a is an instance of Type and rv is a RValue ссылки of Type.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[править] См. также

проверяет, является ли тип имеет оператор ход назначения
Original:
checks if a type has a move assignment operator
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(шаблон класса) [edit]