The View of The String

std::string_view can optimize both performance and code readability in code sections which handle strings. However it can also lead to UB and to memory issues if used incorrectly.

The Mystery of The Missing Bytes

How to save bytes and alignment when containing some types inside a structure. Techniques to avoid wasting space on unique_ptr deleter and on another structures allocators like std vector or map. Taking into account Empty Base Optimization (EBO) and no_unique_address attribute sice C++20. Internal GCC and LLVM compilers implementations.

The Shared The Unique and The Weak – Initialization – Part 1

Shared ptr allocations, initializations, and behind the scenes functionality. Constructors' usage summaries, the aliasing conatructor, make_shared & allocate_shared advantages and disadvantages.

The Shared, The Unique and The Weak

Smart memory management - the ability to maintain pointers "without worrying when they should be released" sounds really utopic, but is it really the entire truth about "smart pointers"?

The Number that Broke and Spoke – C++ Investigator

How many times you find yourself writing hard-coded numbers inside your code, while trying to make sure as much as you can to make these numbers' units visible? You probably found yourself mentioning the units as part of the variable name, or at the comment, praying that who ever gets to your code will understand it. After reading this article, you will have the most maintainable way of doing so.

Maintain Your Iterations – Insecure Iterations – Part 2

The second part of the iterators series. Iterators might be a dangerous thing sometimes. What is the risk they bring with them, and how to prepare to / deal with it?

Maintain Your Iterations – The Iterators Secret – Part 1

The first part of iterators explanation. Why should you use iterators? Which kinds of iterators exist? How can iterators help you to maintain and optimize your code? And what is the secret behind iterators?

Lambda, Expressions, and between them – The Lambdas Mystery – Part 2

The second part of lambda expressions explanation. Behind the scenes of lambda expressions: What lambda expressions truly are? How can they capture variables? How can we use auto params in C++14 lambdas when this feature came only in C++20? Behind the scenes from C++11 to C++20 of lambdas.