Back to Basics: Lambdas from Scratch
summary
Explains lambdas as compiler-generated unnamed class objects with an operator() and shows assembly via Godbolt to prove it; walks concrete examples from C functions, overloading, templates, member operator(), to C++11/14/17/20 lambda semantics like lambda = unnamed class with operator() , captures by value/reference/move including capture [t = std::move(title)] , generic lambdas with auto parameters, captureless conversion to function pointers, and why std::function rejects move-only captures (shared_ptr workaround and unique_function proposal).
AI-written summary · about
chapters (23)
- 0:00Introduction
- 1:13Functions and overloading
- 5:57Member functions
- 9:06Operator overloading
- 10:10Lambda basics
- 12:32Capturing variables
- 16:58Dangling references
- 17:59Move capture
- 19:14Capture shorthands
- 20:23Global variable capture
- 22:21Captureless lambdas
- 23:54Unary plus trick
- 24:59Default and constexpr
- 26:17Local state and mutable
- 30:29Generic lambdas
- 33:50Variadic lambdas
- 34:55This keyword in lambdas
- 38:59Explicit this capture
- 40:51Generic lambda type names
- 43:04Lambdas vs std function
- 47:30Type erasure overview
- 49:00Move-only lambdas
- 51:57Q&A








