What is this blog ?
This blogs aims to enlighten the reader about bad yet often seen pratices in C++, explainations on how it is bad and ways to avoid it.
You will occasionally see artcles about good pratices instead of bad ones, and sometimes strange-yet-interesting behavior.
Feel free to give opinion, advice, or precisions on these articles.
The team
The crew of Belay the C++ is composed of two people:
- Chloé Lourseyre, creator of the blog and main author.
- Peter Fordham, copy editor.
More details about them on the following page : Team.
Latest articles
- a = b = c, a strange consequence of operator associativity
- How to quantify technical debt inflation
- Who owns the memory?
- 3 interesting behaviors of C++ casts
- Constant references are not always your friends
- I don’t know which container to use (and at this point I’m too afraid to ask)
- Retrospective: The simplest error handler
- One of the simplest error handlers ever written
- The three types of development
- Prettier switch-cases
- Is my cat Turing-complete?
- Duff’s device in 2021
- Pragma: once or twice?
- [History of C++] The genesis of casting.
- [History of C++] Templates: from C-style macros to concepts
- [History of C++] Explanation on why the keyword `class` has no more reason to exist
- Yet another reason to not use printf (or write C code in general)
- Best ways to convert an enum to a string
- About sizes
- How to choose between a setter and a reference-getter?
- You shouldn’t assume accessors are fast
- How many languages should a (C++) expert speak?
- Should every variable be const by default?
- Don’t use raw loops
- Exceptions are just fancy gotos
- Dealing with integer overflows
- A list of bad practices commonly seen in industrial projects
- Lambdas as const ref
- Yet another pamphlet about inlining
- windows.h breaks the standard library (and my will to live)
- Passing an enum by parameter
- About &= and |=