All aspects of C++ Move Semantics.
Move semantics, introduced with C++11, has become a hallmark of modern C++ programming. However, it also complicates the language in many ways. Even after several years of support of move semantics experienced programmers struggle with all the details of move semantics. And style guides still don’t recommend the right consequences for programming even of trivial classes. Time to explain all aspects of C++ move semantics in detail.
This book teaches C++ move semantics. Starting from the basic principles it motivates and explains all the corner cases of move semantics so that you as a programmer can use move semantics right. The book is valuable for those that are beginning to learn about move semantics and is essential for those that are using it already.
You will learn:
- Motivation and terminology of move semantics
- How and why you implicitly benefit from move semantics
- How to explicitly benefit from move semantics
- All traps and how to deal with them
- All consequences for your programming style
The focus lies on the application of the described features in practice. Compelling examples and useful background information help to understand and improve code from trivial classes up to generic foundation libraries and frameworks.
“I thought I understood move semantics but I didn’t really! I learned a lot in your book.”
“This is the book I’ve needed for a long time.”
“Sometimes I think I have a better grasp on entanglement & quantum teleportation than I do in some weird C++ move semantics. To paraphrase Feynman: If you think you understand C++ move semantics, you don’t understand C++ move semantics. Read this book.”