~/talk

“Sane and Safe C++ Classes”

Talkat CppCon 2018 · 2018-09-23..09-28· [software-architecture]
slides:none on file

Categorizes C++ types into value, empty, managing, pointing and polymorphic classes and gives concrete rules for special member functions and ownership patterns so you avoid undefined behavior. Explains Rule of Zero versus explicit Rule of Five/Six and recommends deleting move assignment when you declare a destructor to prevent slicing. Demonstrates surprising failures like NaN in std::set yields size 1 and unsigned loop wrap creating infinite loops, and points to no_unique_address to shrink empty-member objects.

AI-written summary · about

  1. 0:00Start
  2. 5:34Plane Pointers
  3. 16:09Signed and Unsigned Arithmetic
  4. 19:20The Whole Value Pattern
  5. 20:48Value Types
  6. 30:42How Does Empty Base Class Optimization Work in C
  7. 35:31Empty Adapters
  8. 40:30Pointers in Disguise Are Iterators
  9. 43:20Smart Pointers
  10. 44:15Shared Pointer
  11. 44:46String View
  12. 49:54Monomorphic Object Types
  13. 50:56The Manager Design Pattern
  14. 54:21Combinations of Special Member Functions
  15. 57:29Model with Value Types
  16. 59:09Pointing Types
~/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.