Tag Archives: c++17

Help the compiler warn you

Compiler warnings are a very useful tool for detecting bugs in your program. Because you can enable them selectively, and because you can choose to turn them into hard errors on your compiler, you can in fact build a dialect, … Continue reading

Posted in programming | Tagged , , , | 6 Comments

Your own type predicate

In this post we will see how to define a type trait or a type predicate or a meta-function that would allow us to check at compile time whether a type exposes an interface that we need. That is, we … Continue reading

Posted in programming | Tagged , , , , , , | 14 Comments

Compile-time string concatenation

We will start with a bug, taken from real life. It spans across three files: Question: what happens when this program is executed?

Posted in programming | Tagged , , , , , | 20 Comments

Clever overloading

This post is intended to be a light introduction to certain C++ guru tricks. I want to introduce a couple of concepts that typically put normal people off. If you are an expert you will probably not learn anything new, … Continue reading

Posted in programming | Tagged , , , , , | 26 Comments