In this chapter, we'll see some basic examples on how the Boost libraries can be used in compile-time checking, for tuning algorithms, and in other metaprogramming tasks.
Some readers may ask, "Why should we care about compile-time things?" That's because the released version of the program is compiled once and runs multiple times. The more we do at compile time, the less work remains for runtime, resulting in much faster and reliable programs. Runtime checks are executed only if a part of the code with the check is executed. Compile-time checks will prevent your program from compiling, ideally with a meaningful compiler error message.
This chapter is possibly one of the most important. Understanding Boost sources and other Boost-like libraries is impossible without it.