The evolution of the C++ language has created the need for revised material on C++ templates. It’s great to see this second edition of C++ templates out at this moment, as it provides a definitive guide to C++ templates with the latest C++ standards.
The book is divided into three parts (28 chapters). Part 1 covers the basics, including function templates, class templates, compile-time programming, basic template terminology, and generic libraries. All levels of C++ programmer should read this part. I also love how the book shows the differences between the different versions of C++. For example, Section 5.2 covers zero initialization both before C++11 and now in C++17. Readers should take their time with the basics before jumping into Parts 2 and 3. Part 2, “Templates in Depth,” presents language details and is a handy reference to template-related constructs. Part 3, “Templates and Design,” explains fundamental design and coding techniques supported by C++ templates.
The content is presented in a refreshing and clear way. The authors try to explain every aspect of C++ templates. Furthermore, the examples come with source code (on the book’s website) so that readers can easily try them out. It is a book for all C++ programmers, from beginner to advanced. However, readers are better off having some familiarity with the latest C++ standards, for example, the value categories since C++11. Overall, it is a great book for C++ programmers who want to do template programming.
More reviews about this item: Amazon, Goodreads