Polymorphic Allocators in C++17

This post starts a miniseries about an almost unknown feature in C++17: polymorphic allocators. I often…

C++23: Ranges Improvements and std::generator

C++20 does not provide concrete coroutines, but C++20 provides a framework for implementing coroutines.…

The Final Version of my C++20 Book

I have given many C++20 classes in the last two years and improved my C++20 knowledge. Consequentially,…

C++23: A Multidimensional View

A std::mdspan is a non-owning multidimensional view of a contiguous sequence of objects. The contiguous…

C++23: Four new Associative Containers

The four associative containers std::flat_map, std::flat_multimap, std::flat_set, and std::flat_multiset…

C++23: A New Way of Error Handling with std::expected

C++23 extends the interface of std::optional and gets the new data type std::expected for error handling. Before…

C++23: A Modularized Standard Library, std::print and std::println

The C++23 standard library has very impressive improvements. In this post, I will write about the modularized…

60 terrible tips for a C++ developer

Today, I want to present a mini book written Andrey Karpov from the PVS-Studio team. This book is educational…

C++ Parallel STL Benchmark

Today, I'm happy to present a guest post from Victor J. Duvanenko about my favorite C++17 feature: the…