static, inline, or an unnamed namespace what's the difference

Today's post teaches the difference between a function declared static, inline, or in an unnamed namespace. "What of these should I use when?" is a question that occasionally [...]

C++ Insights Vim plugin available

Great news for all VIM lovers FreedWu developed a Vim plugin to use C++ Insights in your favorite editor. The plugin is available on GitHub: github.com/Freed-Wu/cppinsights.vim. [...]

Equality of a string class that is only instantiable at compile-time

Today's post continues with last month's post A string class that is only instantiable at compile-time. [...]

A string class that is only instantiable at compile-time

Do you know this, sometimes you have a class that should only be instantiable at compile-time? By that, you can build several assumptions on such a class. For example, that the [...]

Use your programming language

In today's post, you will learn about what that language part of programming language means. [...]

5 Things you and your C++ team can Do Differently

In the past months, I received requests from clients like: [...]

CppCon C++20’s Coroutines for Beginners - Video is available

The video of my first talk from CppCon 2022 is available on Youtube: [...]

C++17's CTAD a sometimes underrated feature

In today's post, I like to look at C++17's Class Template Argument Deduction (CTAD) feature and see how it changes our code. [...]

Use namespaces

Today's post is motivated by some past discussion that came up during standardization. The renaming of two views back to their originally proposed names P2501R0. One was a rename [...]

C++23 - std::expected, the superior way of returning a value or an error

In today's post, I like to jump in time and fast forward to what is coming with C++23, a new data type in the STL std::expected (P0323). The idea behind this data type isn't new. [...]