A few months ago I finished reading Ordinary Men by Christopher Browning. After having read books both about the nazi and the communist destruction in the 20th century, this was yet another depress...
The decorator pattern and binary sizes
In one of the previous articles on binary sizes, we discussed how making a class polymorphic by using the virtual keyword affects the binary size. Turning a function into virtual has a substantial ...
Binary sizes and RTTI
What is RTTI? What does it have to do with the size of your executables? Let’s start with answering the first one. RTTI stands for run-time type information. It’s available for every class that h...
What's the easiest way to add custom code to your WordPress site without breaking it?
C++ is one of the most popular programming languages out there. The latest stats show that it’s now the third-most popular language, surpassing Java for the first time since 2001. Despite it being...
4 different ways I've worked remotely
Like so many of us, I’ve been working remotely since the beginning of the pandemic. I was basically sent home from the office on 16th March 2020. I remember that there were probably 3 of us left in...
The evolution of enums
Constants are great. Types are great. Constants of a specific type are really great. This is why enum classes are just fantastic. Last year, we talked about why we should avoid using boolean funct...
Virtual functions and binary sizes
In the previous article of this series on binary sizes, we discussed how special functions’ implementations - or their lack of - influence the size of the generated binary. Our conclusion was that...
Special functions and binary sizes
These months, I try to better understand how our code affects binary sizes. Last week, we had a look into storage durations and memory allocations. This week, let’s have a look into special member ...
Deep vs shallow modules
I keep telling that I don’t post negative book reviews. It’s because no matter how much I dislike a book, I can be pretty sure that the author made a huge effort writing it. I have absolutely no re...
Object initialization and binary sizes
Let’s have this piece of code that generates a big binary. #include <array> struct Node { int a = 1, b = 1; }; std::array <Node, 10'000> a; int main() {} If you compile this p...