Polymorphism Decision Table

Based on four categories the Polymorphism Decision Table shows us when we can use which kind of polymorphism in C++.


Execute Around Pointer

The Execute Around Pointer is a simple, general and efficient solution to the problem of wrapping calls to an object in pairs of prefix and suffix code.


C++ is a resource-safe language

When I started learning C++, I have been told many times that it is a difficult to learn programming language. For several reasons. One reason was, that it does not have a garbage collector or other kind of built-in resource management. During my increasing experience with C++ I was pleased to recognize that quite the opposite is the case. C++ has all the tools at hand to write resource safe code.


Deduction Guides for Range Adaptors

The Ranges library is part of the STL since C++20. A lot of teaching material is available online already. Even though most of this teaching material uses range adaptors (e.g. std::views::transform) to adapt both lvalue and rvalue ranges, the underlying mechanism is mentioned briefly at most. This talk will close this knowledge gap. It will explain the differences between adapting an lvalue and an rvalue, and how the range adaptors deduction guides, while not at all visible to a user, make the key difference.


Brace Yourselves, std::to_underlying is coming

C++23 will standardize the utility function std::to_underlying. This talk will present how this addition to the STL can break your existing code base, as well as present solutions for how to solve this.


75 STL Headers in under 10 minutes

In C++20, the STL consists of 75 headers (excluding deprecated headers and those from the C standard library). During this lightning talk we will rush trough all of them and get a brief overview of what they contain.