~/talk

C++ Concepts for Developers

Talkat NDC TechTown 2019 · 2019-09-02..09-05· [compilers-and-language-design]
links:none on file
slides:none on file

C++20 adds concepts as compile‑time constraints on template parameters that check whether expressions compile but cannot enforce semantic axioms (cannot prove sortedness or algebraic laws). They replace many enable_if hacks, enable clearer single error messages, support non‑type templates, and new patterns like constrained auto and disjunctions of concepts for overload resolution. Concepts let code express domain roles (e.g., “archivable” if save or dump exists) without editing types, reduce runtime overhead versus virtual interfaces, but contracts (runtime pre/postconditions) are not included.

AI-written summary · about

  1. 0:00Intro
  2. 1:08C++ concepts
  3. 2:26History of concepts
  4. 8:11What can concepts achieve (and what not)?
  5. 10:21Concepts and contracts
  6. 11:16Concepts and other languages
  7. 13:18Types and scaling development
  8. 17:32Concepts as a form of introspection
  9. 20:25Concepts and metaprogramming
  10. 21:43Concepts and hierarchies
  11. 25:08Concepts and type erasure
  12. 27:53Concepts vs object-orientation
  13. 32:46Concepts and design patterns
  14. 34:19Concepts as application roles
  15. 36:39Concepts check syntax only
  16. 37:45Concepts check code syntax or values
  17. 38:55Concept syntax variations
  18. 41:19Concepts - variables and functions
  19. 42:00Conjunction and disjunction
  20. 47:16Concepts and unit testing
  21. 48:00Things that you can do only with concepts
  22. 49:58Concepts and the C++ Core Guidelines
  23. 50:35Summary
~/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.