Please rotate your tablet to be horizontal.

You can dismiss this notice but please note that this experience has not been designed for mobile devices and so will be less than optimal

Back To Schedule

Back to Basics

Move Semantics

14:00 - 15:00 Monday 12th September 2022 MDT Summit 1 / Online E
Resource Management

Move semantics is a topic that feels hard to understand. This talk will give you a good understanding, demystifying some myths out there using a new and unique way of talking about moving.

For example, you've heard those move operations should be noexcept. In this talk, you will learn the why while we write things like an efficient move constructor and a move assignment operator.

During this talk, we will look at rules for when to use std::move and when to use std::forward.

There is one topic we have to discuss as well, what is a moved-from object, and what can you do with such an object?

You're eager to squeeze out the last drop of performance? Then we should talk about the ref-qualifiers. Why waste performance?

At the end of this talk, you have a solid understanding of move semantics, enabling you to write competitive performant code.

Andreas Fertig

Unique Code GmbH

Andreas Fertig, CEO of Unique Code GmbH, is an experienced trainer and lecturer for C++ for standards 11 to 20.

Andreas is involved in the C++ standardization committee, in which the new standards are developed. At international conferences, he presents how code can be written better. He publishes specialist articles, e.g., for iX magazine, and has published several textbooks on C++.

With C++ Insights (, Andreas has created an internationally recognized tool that enables users to look behind the scenes of C++ and thus to understand constructs even better.

Before working as a trainer and consultant, he worked for Philips Medizin Systeme GmbH for ten years as a C++ software developer and architect focusing on embedded systems.

You can find Andreas online at