C++ Digest No. 5 (October 2 – October 15, 2023)

C++ Digest No. 5 (October 2 – October 15, 2023)

Hello, Habre! Today I want to present to you a selection of interesting news and materials from the world of C++ for the past two weeks.

  • โ€” How does addiction work and what daily problems does it solve?

  • ๐Ÿ‡ท๐Ÿ‡บ Habr: In-depth std::unordered_map: magic numbers – About the magic of standard hash tables with a little dive into their implementation in libstdc++.

  • ๐Ÿ‡ท๐Ÿ‡บ Habr: Garbage collection: how it’s done in systems programming – About RCU, one method of ensuring non-blocking data sharing across threads.

  • ๐Ÿ‡ท๐Ÿ‡บ Habr: Deep down the rabbit hole: Binary Boundary and ABI C++ – About what ABI and binary boundaries are and what problems can arise when crossing them.

  • Macro Arena: SObjectizer Tales, Prelude – An introduction to SObjectizer, a framework for building parallel and multithreaded applications that support actor, Publish-Subscribe and CSP models.

  • Macro Arena: SObjectizer Tales, Producing Images โ€” An in-depth introduction to SObjectizer using the example of developing an application that displays and analyzes information from a camera.

  • Bartล‚omiej Filipek: Spans, string_view, and Ranges โ€” Four View types โ€” Overview of all data projections (English views) that exist in C++: from std::string_view (C++17) to std::mdpsan (C++23).

  • Sandor Dargo: How to mark typed and untyped members in C++20? โ€” About how modern C++ solves the problem of comparing signed and unsigned integers.

  • Andreas Fertig: C++23s constexpr unique_ptr – Introduction to constexpr unique_ptr (From 23).

  • A view of the covers from the working mechanisms boost::is_base_of (caution, there are 14 references to the standard in the text!)

  • Rainer Grimm: C++20: Module Support of the Big Three – An overview of the current state of module support in clang, gcc, and msvc.

  • Rainer Grimm: Special Allocators with C++17, โ€” Practical examples of using polymorphic allocators.

  • Rainer Grimm: Optimization with Allocators in C++17 – About how polymorphic allocators allow us to optimize our code: achieve better performance and memory reuse.

  • Spotted an error or typo? Report in private message (telegram, habr)

    Related posts