What do you think?


C++ Templates: The Complete Guide 2nd Edition
Templates are among the most powerful features of C++, but they remain misunderstood and underutilized, even as the C++ language and development community have advanced. In C++ Templates, Second Edition, three pioneering C++ experts show why, when, and how to use modern templates to build software that’s cleaner, faster, more efficient, and easier to maintain.
Now extensively updated for the C++11, C++14, and C++17 standards, this new edition presents state-of-the-art techniques for a wider spectrum of applications. The authors provide authoritative explanations of all new language features that either improve templates or interact with them, including variadic templates, generic lambdas, class template argument deduction, compile-time if, forwarding references, and user-defined literals. They also deeply delve into fundamental language concepts (like value categories) and fully cover all standard type traits.
The book starts with an insightful tutorial on basic concepts and relevant language features. The remainder of the book serves as a comprehensive reference, focusing first on language details and then on coding techniques, advanced applications, and sophisticated idioms. Throughout, examples clearly illustrate abstract concepts and demonstrate best practices for exploiting all that C++ templates can do.
Understand exactly how templates behave, and avoid common pitfalls
Use templates to write more efficient, flexible, and maintainable software
Master today’s most effective idioms and techniques
Reuse source code without compromising performance or safety
Benefit from utilities for generic programming in the C++ Standard Library
Preview the upcoming concepts feature
Now extensively updated for the C++11, C++14, and C++17 standards, this new edition presents state-of-the-art techniques for a wider spectrum of applications. The authors provide authoritative explanations of all new language features that either improve templates or interact with them, including variadic templates, generic lambdas, class template argument deduction, compile-time if, forwarding references, and user-defined literals. They also deeply delve into fundamental language concepts (like value categories) and fully cover all standard type traits.
The book starts with an insightful tutorial on basic concepts and relevant language features. The remainder of the book serves as a comprehensive reference, focusing first on language details and then on coding techniques, advanced applications, and sophisticated idioms. Throughout, examples clearly illustrate abstract concepts and demonstrate best practices for exploiting all that C++ templates can do.
Understand exactly how templates behave, and avoid common pitfalls
Use templates to write more efficient, flexible, and maintainable software
Master today’s most effective idioms and techniques
Reuse source code without compromising performance or safety
Benefit from utilities for generic programming in the C++ Standard Library
Preview the upcoming concepts feature
832 pages, Kindle Edition
First published January 1, 2013
Ratings & Reviews
Friends & Following
Create a free account to discover what your friends think of this book!
Community Reviews
Displaying 1 - 6 of 6 reviews
September 21, 2021
Masterpiece
December 6, 2025
Very interesting and useful book. Even though on Goodreads the main author is listed as David Vandevoorde, this book has so many examples that it feels much closer to Nicolai M. Josuttis's style, yet he is mentioned only as a co-author.
The authors did a great job describing and demonstrating how templates work, why they matter, and where they can be used. All examples are filled with comments and additionally explained line by line after the code.
Even though I did not read the book to the end because I couldn't find enough time to practice all of the features myself, it still gave me lots of new knowledge. I can definitely recommend it to anyone who wants to become better at C++ templates.
The authors did a great job describing and demonstrating how templates work, why they matter, and where they can be used. All examples are filled with comments and additionally explained line by line after the code.
Even though I did not read the book to the end because I couldn't find enough time to practice all of the features myself, it still gave me lots of new knowledge. I can definitely recommend it to anyone who wants to become better at C++ templates.
October 5, 2019
Excellent and comprehensive. The second edition contains many interesting fragments regarding applications and of course a thorough and exhausting overview of their mechanism and form.
March 12, 2020
Comprehensive, but too many tricky snippets.
November 1, 2024
After reading it from cover to cover, I can say without hesitation that it's the best C++ I ever read.
November 9, 2017
Although it's a bit late for the book being published since for modern C++ template constexpr has been introduced in C++11, which is around 6 years ago.
Nevertheless C++17 has added pieces to complete the whole picture(such as if constexpr, constexpr lambda, inline variable etc.)
Well written and explained in detail.
Nevertheless C++17 has added pieces to complete the whole picture(such as if constexpr, constexpr lambda, inline variable etc.)
Well written and explained in detail.
Displaying 1 - 6 of 6 reviews




