I realise the title is a bit of a mouthful. It was either that or “No-copy IPC lock-free queue for variable length messages”. Naming is hard. DISCLAIMER: It’s not uncommon that one needs to send messages to another process as fast as possible, but 99% of the cases the best answer for that is boost::interprocess[1]. […]| ReachableCode
TLDR: godbolt links: Clang Gcc Intro If there is one thing that it’s easy to do with C style loops and not as easy with modern C++, it’s keeping the loop variable around while we are accessing the elements of a container. The C way, and arguably the best way, is the usual On the […]| ReachableCode
Some times it happens that we just want to define an interface, and some of those times we think that we should not use inheritance for some performance-related reasons. Most of these times we are very wrong, and we should just inherit from a base class with (possibly pure) virtual functions. However in this post […]| ReachableCode
What is the difference between a concept and a type trait? Note that you can create a type trait using a requires-expression: You can also constrain a template with a type trait using a requires-cl…| Andrzej's C++ blog
Learn the ways to iterate in a reverse order on a container - C++11 to C++20 with a custom, easy to use, method to allow a reverse iterations in a simple way prior to C++20 and without the ranges library.| C++ Senioreas
Lambda expressions usages in C++ since C++11 to C++20. Features, rules, usages and abilities. Why do we need it, and how can we get more maintainable code by using it?| C++ Senioreas
In my first blog post about C++20 Coroutines I introduced the concepts behind a synchronous or generator style coroutine and developed a template class to support coroutines for any data type. In this post I’ll add an iterator to the template to support the range-for loop and iterative algorithms. You may want to review that post before reading this one but the following code should act as a reminder about how to write and use a coroutine to read two floating [...]| Sticky Bits - Powered by Feabhas
I am happy to announce the release of budgetwarrior 1.1.0. The last release of budgetwarrior was more than 5 years ago. So, once I finished my C++20/C++23 refresh of the code, I decided it was a good| Blog blog("Baptiste Wicht");
explicit(bool) C++20 feature discussion, motivation, usage example, proposal and more. Basic explanation about explicit and implicit conversions pros and cons.| C++ Senioreas
C++ Riddle – involves shared_ptr, string_view and some metaprogramming.| C++ Senioreas