Optimization with Allocators in C++17

Thanks to polymorphic allocators in C++17, you can optimize your memory allocation. This optimization…

Special Allocators with C++17

I introduced in my last post "Polymorphic Allocators with C++17" the theory of polymorphic allocators…

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…