1 Answers

In the C++ programming language, the move assignment operator = is used for transferring a temporary object to an existing object. The move assignment operator, like most C++ operators, can be overloaded. Like the copy assignment operator it is a special member function.

If the move assignment operator is not explicitly defined, the compiler generates an implicit move assignment operator provided that copy/move constructors, copy assignment operator or destructors have not been declared. The parameter of a move assignment operator is an rvalue reference to type T, where T is the object that defines the move assignment operator. The move assignment operator is different than a move constructor because a move assignment operator is called on an existing object, while a move constructor is called on an object created by the operation. Thereafter, the other object's data is no longer valid.

4 views

Related Questions