From Jason Turner
Watch on YouTube

Summary

This episode answers viewer questions about the practical applications of inheriting from lambdas, a technique previously demonstrated in episodes 40 and 48. Jason shows how lambda inheritance can be used to elegantly implement the visitor pattern for std::variant types. By creating a single callable object that inherits from multiple lambda expressions, each handling a different variant alternative, developers can craft concise visitors that process heterogeneous collections. The episode demonstrates this with a practical example of summing values from an array of variants containing different numeric types, showcasing how this C++17 technique simplifies type-specific processing.

Resources

Tags