~/talk

Embracing `noexcept` Operators and Specifiers Safely

Talkat CppCon 2021 · on Thursday, 2021-10-28· at 15:15· B) Summit 8/9, online· [security]
slides:none on file

Shows concrete behavior: the noexcept operator inspects entire expression (including temporaries and destructors), how that forces copies in a vector push_back with reserve and move/swap example, and where compilers disagree; documents a small benchmark and exact static_assert constraints used to force or reject algorithms. Points out surprising defaults (destructors often not noexcept), strong-exception-guarantee copy blowup, and proposes a practical C++23 fix — essentially an optimization-only noexcept2 to separate contract from optimization.

AI-written summary · about

  1. 0:00Start
  2. 0:54John Lakos
  3. 9:18Description
  4. 9:33The Primary Purpose Improve Algorithmic Performance in Generic Code
  5. 14:46Compound Expressions
  6. 16:42Explicitly Default Member Functions
  7. 17:16Applying no Accept Operator To Move Expressions
  8. 18:04Copy and Move Operations
  9. 19:03Review of R Value References
  10. 21:59Use Cases for the no Accept Operator
  11. 23:34The Strong Guarantee
  12. 24:34Write a Test Driver
  13. 37:27Directives
  14. 45:33Destructors
  15. 49:47Generic Context
  16. 51:44Violating an Exception
  17. 54:13Inheritance
  18. 55:04Use Case
  19. 59:59Pitfalls
  20. 1:01:23Conclusion
~/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.