Logo

Blog


C++

Best performance of a C++ singleton

In 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 trick

My 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 action

In 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 type

In 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 bad

In 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 types

In 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-time

In 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 example

In 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 [...]