C++ Templates: The Complete Guide (2nd Edition)

C++ Templates: The Complete Guide (2nd Edition)
by David Vandevoorde / / / PDF


Read Online 63 MB Download


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

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. InC++ Templates, Second Edition,

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.

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.

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.

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

Understand exactly how templates behave, and avoid common pitfallsUse templates to write more efficient, flexible, and maintainable software

Use templates to write more efficient, flexible, and maintainable softwareMaster today’s most effective idioms and techniques

Master today’s most effective idioms and techniquesReuse source code without compromising performance or safety

Reuse source code without compromising performance or safetyBenefit from utilities for generic programming in the C++ Standard Library

Benefit from utilities for generic programming in the C++ Standard LibraryPreview the upcoming

Preview the upcomingconcepts

concepts feature

featureThe companion website, tmplbook.com, contains sample code and additional updates.

The companion website, tmplbook.com, contains sample code and additional updates.

views: 2172