~/talk

Back to Basics: Rvalues and Move Semantics in C++

slides:none on file

Implements a minimal string type and implements a minimal string with move ctor/assign showing the actual code changes and prints that prove the move happened, experiments with compiler flags to demos -fno-elide-constructors and RVO/NVRO, measures where copy elision hides moves, demonstrates when to add noexcept to moves and the concrete impact on std::vector reallocation, explains std::move vs std::forward, fixes a real pop/swap bug (avoids dangling references) and follows rule‑of‑zero/design guidance.

AI-written summary · about

  1. 0:00Move semantics motivation
  2. 1:05Introduction
  3. 6:44Lvalues vs rvalues
  4. 12:45Overloading with references
  5. 17:46Move operations for string
  6. 27:26Move semantics optimizations
  7. 32:53Overload resolution and std::move
  8. 38:06Safe use of std::move
  9. 42:03Rule of Zero
  10. 45:39Rule of Five
  11. 48:04Why noexcept matters
  12. 50:09Forwarding references
  13. 53:22Forwarding examples
  14. 57:14Summary
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.