This video makes me cry: "Doc Rivers from the heart"

Josuttis Move Semantics  C++ Move Semantics - The Complete Guide

It's done (260 pages)!

Cover C++ Move Semantics

C++ Move Semantics - The Complete Guide

by Nicolai M. Josuttis

  • Giving guidance on how to use Language and Library Features of Move Semantics
  • For programmers, who want understand and benefit from one of the most important features of Modern C++

This book was written and published incrementally (step-by-step) at leanpub,
so that readers could benefit from it without waiting until all is done.
And I got early feedback from readers to improve the content.

The first version was available in January, 2020.

Now, I am done. All features are covered.

Order the printed book here

Order the ebook here


Move semantics, introduced with C++11, has become a hallmark of modern C++ programming. However, it also complicates the language in many ways. After several years of support for move semantics, experienced programmers still struggle with all the details. Even for trivial classes, style guides give conflicting or inappropriate advice on how to benefit from move semantics.

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 as a programmer, you can use move semantics correctly. The book is valuable for those who are just starting to learn about move semantics and is essential for those who are using it already.

You will learn:

  • The motivation for and terminology of move semantics
  • How and why you benefit implicitly from move semantics
  • How to benefit explicitly from move semantics
  • All the traps involved in move semantics and how to deal with them
  • All the consequences of move semantics for your programming style

As usual for books by Nicolai Josuttis, the focus lies on the application of the features described in practice. Compelling examples and useful background information help you to understand and improve code, from trivial classes up to generic foundation libraries and frameworks.

Nicolai M. Josuttis is well known in the programming community for his authoritative books and talks. For more than 20 years he is a member of the C++ Standard Committee. He is the (co-)author of several worldwide best-sellers, including

"I thought I understood move semantics but I didn't really! I learned a lot in your book."
Jonathan Boccara

"This is the book I’ve needed for a long time.
Rob Bernstein

"Sometimes I think I have a better grasp on entanglement and quantum teleportation than I do in some weird C++ move semantics. To paraphrase Feynman: If you think you understand C++ move semantics, you do not understand C++ move semantics. Read this book." Victor Ciura

The book is now available as printed book:
Nicolai M. Josuttis
C++ Move Semantics- The Complete Guide
 ISBN-13:    978-3-96730-900-3
 ISBN-10: 3-96730-900-2

Table of Content:

(all features covered):

Basic Features of Move Semantics:

Move Semantics in Generic Code:

Move Semantics in the C++ Standard Library :

Note that you can also book inhouse trainings about all topics of Modern C++ and C++17 (both the language and its standard library) .

Copyright 2020 by Nicolai M. Josuttis
Impressum    Datenschutzerklšrung