~/talk

C++17 in Practice - The good and the ugly

Talkat NDC TechTown 2018 · 2018-09-27..09-30· [compilers-and-language-design]
slides:none on file

C++17 is practical on VC++, gcc and clang but contains surprising pitfalls and fixes: class template argument deduction removes many explicit template args but causes unexpected overload/initializer-list and iterator-decay bugs (two string literals can become iterators spanning huge undefined memory). std::variant with visit replaces heap polymorphism for closed sets and works well. string_view dangers include dangling references from temporaries and wrong return types. New features: fold expressions, constexpr if, parallel algorithms and filesystem — useful but require care.

AI-written summary · about

  1. 0:00Intro
  2. 1:01Global Objects
  3. 2:55Class Template Argument Deduction
  4. 5:53Vectors
  5. 13:19Constructors
  6. 17:47Compiler
  7. 23:27Very attic templates
  8. 25:44Compile time
  9. 28:13Undefined behavior
  10. 29:47Evaluate before
  11. 31:51Fold expression
  12. 32:57Auto parameters of templates
  13. 34:34Optionals
  14. 36:43Surprises
  15. 40:47Runtime polymorphism
  16. 45:17Overload
  17. 47:54Strings
  18. 50:27String views
  19. 53:54File system
  20. 56:05Base initialization
~/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.