On the benefits of non-intrusiveness
summary
Compares intrusive OOP (public inheritance, interfaces) with non‑intrusive C++ techniques and shows concrete recipes: using traits and std::numeric_limits to expose a type’s max value without changing existing types, a void_t‑based detection pattern to test whether expressions compile, and C++20 concepts to require “addable” or “incrementable” types at compile time. Contrasts those with C# constraints and extension methods, explains refactoring and compile‑time costs, and demonstrates wrappers/variant approaches that work without modifying original classes.
AI-written summary · about
chapters (10)
- 0:00Introduction
- 5:26Intrusive solutions problems
- 12:53Intrusive C# downsides
- 22:31Non-intrusive benefits
- 30:00Traits in C++
- 41:13Generic code validation
- 47:54C++ concepts
- 55:45Extension methods
- 59:59Choosing non-intrusive
- 1:01:01Q&A
related talks
01h 13mType safe C++ – LOL! :-)
12mTraits Go Mainstream...
55mHow to "OO" in C++
01h 07mDesign Patterns in Modern C++
56mCute C++ Tricks (and what you can learn from them): Part 2 of N
59mModern C++ for Fun and Profit: This isn’t your old C++
55mGreat C++ is_trivial
01h 02mC++20 - My Favourite Code Examples
