already difficult enough to master; why do people feel the need to
make it even more difficult?
C++’s power comes at a price, but with the latest revisions of the
language, the bar has been drastically lowered. The improvements in
C++11 and C++14 have had a positive impact in many areas, from
how you write a loop to how you can write templates.
We’ve had the idea of writing about template metaprogramming for
a long time, because we wanted to demonstrate how much easier it
has become. We also wanted to prove its usefulness and efficiency.
By that we mean that it’s not only a valid solution, but sometimes
the best solution.
Last but not least, even if you don’t use metaprogramming every day,
understanding its concepts will make you a better programmer: you
will learn to look at problems differently and increase your mastery
and understanding of the language.