Prog C++
summary
Closing keynote proposes concrete idioms and tiny library pieces: a lazy keyword emulated by a class template using std::optional and call_once for thread‑safe deferred init, an immutable wrapper that preserves move semantics while exposing const accessors, and always‑use copy‑and‑swap assignment with friend swap implemented via std::tie to guarantee strong exception safety. Also shows generator‑based coroutines yielding expected/error messages for incremental error fixes, a HeapValue value‑semantic pointer type, and a unique‑key locking pattern to make locking compiler‑checked.
AI-written summary · about
chapters (21)
- 0:00Introduction
- 2:51What is Prog C++
- 6:29Const by default problems
- 8:59Lazy idiom for deferred init
- 13:01Const not always best
- 17:37Extending C++ with lazy/immutable
- 20:04Dangers of custom assignment
- 23:14Copy and swap idiom
- 27:09Why swap is powerful
- 31:06Too many states problem
- 35:53Variants for state transitions
- 41:15Expected and error handling
- 44:51Exceptions not always best
- 46:57Coroutines for error handling
- 57:05Values vs variables
- 1:01:47Pimpl pitfalls
- 1:11:29Safety and correctness idioms
- 1:24:00Locking and deadlocks
- 1:33:12Provable idiomatic C++
- 1:44:18Progressive C++ future
- 1:50:01Final thoughts Q&A
related talks
01h 24mKeynote: Optimizing for Change
25mHow to Master C++
10mC++ Workshop and Talk Preview With Nicolai Josuttis for C++OnSea 2024
05mLightning Talk: FINALLY - The Presentation You've All Been Waiting For
01h 29m“Simplicity: Not Just For Beginners”
01h 39m“Learning and Teaching Modern C++”
19mAn interview
01h 04mClosing Keynote
