BlogC++Best performance of a C++ singletonIn my Januray post, I focused on implementing a singleton correctly. This time I want to add performance into the mix and show you the best way to implement your singleton... or [...]C++The Reset trickMy last month's post, Singleton done right in C++, has triggered plenty of comments. I expected a few, but not that much. So thank you for keeping the conversation going. [...]C++Singleton done right in C++In today's post, I like to touch on a controversial topic: singletons. While I think it is best to have a codebase without singletons, the real-world shows me that singletons are [...]C++C++20s std::source_location in actionIn today's post, I want to address a question I'm getting occasionally when teaching a C++20 class. From the plenty of new features that we got with C++20, one sticks out as [...]C++C++20s concepts with a forward declared typeIn today's post, I would like to continue talking about forward declared or better incomplete types in C++. [...]C++Forward declaring a type in C++: The good, and the badIn today's post, I would like to shed some light on the implications of forward declaring a type in C++. [...]C++Efficient C++: The hidden compile-time cost of auto return typesIn today's post, I would like to dive into writing efficient C++ code. As you probably know, one post will not cover this entire topic. For today's post, I like to focus on [...]C++C++26 reflection at compile-timeIn today's post, I like to talk about C++26 and one of the probably most impactful features that have been added to the working draft. While C++26 is still some months away from [...]C++A virtual destructor in C++, when?In today's post, I would like to explain a design rationale used in my post Understanding the inner workings of C++ smart pointers - The shared_ptr. [...]C++C++ unspecified behavior explained by practical exampleIn today's post, I like to talk about unspecified behavior in C++. While there are other sorts of behavior in our language, I'll stick with the one today and may cover the others [...]Posts navigation1 2 3 4 5 6 7 8 9 〉