
C++ Templates
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
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
The companion website, tmplbook.com, contains sample code and additional updates.
All prices
More details
Other editions
Additional editions

Persons
Nicolai M. Josuttis is well known for his best-selling de-facto standard bookThe C++ Standard Library - A Tutorial and Reference. He is an independent technical consultant who designs object-oriented software for the telecommunications, traffic, finance, and manufacturing industries. He is an active member of the C++ Standard Committee and a partner at System Bauhaus, a German group of prominent object-oriented system development experts. Josuttis has written several other books on object-oriented programming and C++.
Douglas Gregor is Senior Swift/C++/Objective-C Compiler Engineer at Apple. He holds a PhD in computer science from Rensselaer Polytechnic Institute, and did post-doctoral work at Indiana University.
Content
Chapter 1: Function Templates
Chapter 2: Class Templates
Chapter 3: Nontype Template Parameters
Chapter 4: Variadic Templates
Chapter 5: Tricky Basics
Chapter 6: Move Semantics and enable_if<>
Chapter 7: By-Value or By-Reference?
Chapter 8: Compile-Time Programming
Chapter 9: Using Templates in Practice
Chapter 10: Basic Template Terminology
Chapter 11: Generic Libraries
Part II: Templates in Depth
Chapter 12: Fundamentals in Depth
Chapter 13: Names in Templates
Chapter 14: Instantiation
Chapter 15: Template Argument Deduction
Chapter 16: Specialization and Overloading
Chapter 17: Future Directions
Part III: Templates and Design
Chapter 18: The Polymorphic Power of Templates
Chapter 19: Implementing Traits
Chapter 20: Overloading on Type Properties
Chapter 21: Templates and Inheritance
Chapter 22: Bridging and Static and Dynamic Polymorphism
Chapter 23: Metaprograms
Chapter 24: Typelists
Chapter 25: Tuples
Chapter 26: Discriminated Unions
Chapter 27: Expression Templates
Chapter 28: Debugging Templates
Appendixes
Appendix A: The One-Definition Rule
Appendix B: Value Categories
Appendix C: Overload Resolution
Appendix D: Standard Type and Meta Utilities
Appendix E: Concepts
Bibliography
Glossary
Index
System requirements
File format: ePUB
Copy protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (not Kindle).
The file format ePub works well for novels and non-fiction books – i.e., „flowing” text without complex layout. On an e-reader or smartphone, line and page breaks automatically adjust to fit the small displays.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our ebook Help page.
File format: ePUB
Copy protection: Watermark-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Use a reading software that can process the file format ePUB: e.g., Adobe Digital Editions or FBReader – both free (see eBook Help).
- Tablet/Smartphone (Android; iOS): Before downloading, install the free app Adobe Digital Editions (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (not Kindle).
The file format ePUB works well for novels and non-fiction books – i.e., „flowing” text without complex layout. On an e-reader or smartphone, line and page breaks automatically adjust to fit the small displays.
This eBook uses Watermark-DRM, a „soft” copy protection. This means that there are no technical restrictions to prevent illegal distribution. However, there is a personalised watermark embedded in the eBook that can be used to identify the purchaser of the eBook in the event of misuse and to provide evidence for legal purposes.
For more information, see our eBook Help page.