Posts
Sandor Dargo's Blog
Cancel

What to do if you don't want a default constructor?

Do we need a default constructor? What does it mean to have a default constructor? What happens if we don’t have one? Those are the questions we are going after in this article. A default construc...

Trip report: C++ On Sea 2024

Last week, between the 3rd and 5th of July, I had the privilege to attend and present at C++ on Sea 2024 for the 5th time in a row! I’m grateful that the organizers accepted me not simply as a spe...

C++23: further small changes

In this article, let’s get back to exploring C++23. We are going to have a look at some unrelated small changes in the standard, including the rarest species of changes. Deprecations! Printing vol...

Member ordering and binary sizes

While I have been preparing my presentation for C++ On Sea, I realized that something is missing from How to keep your binaries small. The importance of member ordering! I remember learning at a p...

Did you do what I asked for or not?

Any resemblance to reality is pure coincidence. This story has nothing to do with my current or previous employers. I wouldn’t look for such troubles. A notification popped up in the top-right cor...

Limit the number of library dependencies

First, let’s discuss what a dependency is. When we talk about dependencies, we can talk about different approaches. When hearing the word “dependency”, many people first think about dependency inj...

The limits of `[[maybe_unused]]`

The codebase I work with defines a utility macro called UNUSED. Its implementation is straightforward, it takes a variable (let’s call it x) as a parameter and expands it as ((void)x). The reason w...

C++23: chrono related changes

Let’s continue with what is changing in C++23. This time, let’s look at the three changes related to the chrono library. The first two are related to std::format and using locales, and the last one...

Do engineering teams really resemble sports teams?

“We are one big family!” - so many developers have heard that at various workplaces. Some people like the comparison, but probably many more don’t. And no matter whether you like it or not, it’s si...

Two cases when forward declaring is not enough

Let me share two cases when I had to include some header files instead of just using forward declarations. I was surprised by both at first. As you will see, one was a simple overlook, but the othe...