Move semantics, value semantics, rvalue references, rvalues, lvalues etc. are all terms related to what lies at the heart of modern C++. These concepts are all related and in this video we look at exactly what they mean. By re-inventing them.
In this video we re-invent move semantics as it exists in C++11 starting from the reasons for its existence and inventing every single machinery that is used to achieve the proper moving of the data between objects along the way.
📚 As always, the script to the video lives here: https://github.com/cpp-for-yourself/supplementary-materials/blob/main/lectures/move_semantics.md
Related materials:
- Value categories: https://en.cppreference.com/w/cpp/language/value_category
- std::move: https://en.cppreference.com/w/cpp/utility/move
Hope you enjoy this one! Please leave any suggestions below the video or tell what you liked about the video!