It is common in programming that a copy of an existing variable is needed. Similarly there may be a need to assign the value of a variable to another. Objects are no exception. However, the meaning of these operations is not as straightforward. In addition, C++ offers a way to avoid copying by moving the state of the object to another.
Hence we will end the course by covering: Copying of objects, copy constructor, reference, shallow and deep copy, slicing, assignment, assignment operator, basics of move semantics.