What Do We Mean When We Say Nothing At All?
summary
Examines how omitted C++ keywords and punctuation actually communicate intent, shows concrete fixes and compiler-aware tools: use attributes like fallthrough, nodiscard, maybe_unused to suppress or trigger warnings; prefer default-member-initializers and range-based for or <algorithm> calls so unusual loops stand out; mark parameter names absent in definitions to signal unused args; inspect presence of new/delete, unique_ptr/shared_ptr, or rule-of-zero usage to infer whether raw pointers are owning.
AI-written summary · about
chapters (22)
- 0:00Intro
- 0:56Who Do We Write For?
- 2:56Writing Code is a form of Communication
- 3:46Reading Code
- 5:04Well Written Code
- 5:45Roger Orr's Favourite Code Snippet
- 6:13Introducing
- 6:28Saying Nothing Sometimes Speaks
- 8:40Let's talk about these...
- 13:05Maybe Unused
- 16:53How Can You Be Clearer About Intent?
- 20:33Context
- 22:37Optional Return Statements
- 25:44Parameter Passing
- 27:54Omitting Parameter Names
- 30:54Is A Raw Pointer Always A Non-owning Pointer?
- 34:36What Does & Mean? *?
- 36:27Is A Traditional for Loop Always Doing Something Odd?
- 39:57Initializing
- 46:32Communicate
- 48:30What is Not in Your Code?
- 50:15Nothingness
related talks
01h 01m“What Do We Mean When We Say Nothing At All?”
02mC++ Keywords Speak for Themselves
01h 37mStandard Attributes in C and C++
01h 19mSpecial Member Functions in C++
07mAll the Default's Are Backwards
03mKeyword Abuse
54m*(char*)0 = 0; - What Does the C++ Programmer Intend With This Code?
54mTypical C++, But Why?
