~/talk

Object-Oriented Program: Best Practices

Talkat C++ on Sea 2020 · 2020-07-15..07-17· [c-and-cpp]
name:Jon Kalb
github:boostcon
slides:none on file

Defines OOP specifically as runtime polymorphism via virtual functions and explains vtable dispatch and its small overhead; gives concrete rules: use inheritance for is‑a relationships not code reuse, make non-leaf classes abstract and leaf classes final, protect base assignment to avoid slicing, always give polymorphic bases virtual destructors, tag overrides with override, avoid default parameter defaults in overrides, never call virtuals from constructors/destructors, and prefer dynamic_cast for safe downcasts or refactor to add a base virtual hookup (NVI) instead.

AI-written summary · about

  1. 0:00Intro
  2. 1:10ObjectOriented Programming
  3. 4:27Theory
  4. 9:21Pure Client
  5. 11:32Subtype Requirement
  6. 13:09Our Goal
  7. 14:52How Does It Work
  8. 16:14Vtable
  9. 23:08Guidelines
  10. 23:32Inheritance
  11. 27:48Public Inheritance
  12. 28:57Nonleaf Classes
  13. 34:05Scotts Solution
  14. 34:32Class Types
  15. 34:52Derivation
  16. 37:17Shallow Hierarchies
  17. 39:01Concrete Hierarchies
  18. 43:45Nonvirtual Interface
  19. 47:02Natural Shape
~/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.