Notebook C++ - Tips and Tricks with Templates is available as paperpack
One of my long-term book projects, Notebook C++ - Tips and Tricks with Templates, is now available as a paperback version on Amazon.

More information at andreasfertig.com/books/notebookcpp-tips-and-tricks-with-templates/ or directly on Amazon. The ebook versions (PDF, mobi) are still available on Leanpub.
Here is the table of contents:
- Contents
- Notes by Standard at a Glance
- Notes belonging to C++11
- Notes belonging to C++17
- Notes belonging to C++20
- Tips and Tricks with Templates
- Note 1: Know the name
- Note 2: Templates can have type and non-type parameters
- Note 3: When to use
typename, whenclass - Note 4: The parts of a variadic template
- Note 5: There are no implicit conversions for template parameters
- Note 6: Alias template for clean TMP
- Note 7: Variable template for clean TMP
- Note 8: The trailing-return-type with
decltypeandvoid() - Note 9: Use
declvalwhen you need to construct a type for testing during compile-time - Note 10: What
void_tdoes - Note 11: Keep that array's size
- Note 12: There is no else if in C++
- Note 13: More useful than it appears:
always_false - Note 14: Prefer
autoas NTTP to reduce redundancy - Note 15: Block template argument deduction
- Note 16: Fold expressions and the comma operator
- Note 17: Poor men's fold expressions
- Note 18: From an array to a pack
- Note 19: From an array to a pack with templated lambda
- Note 20: Create objects in place for direct use
- Note 21: Guidelines for efficient use of templates
- Note 22: Put
enable_ifon the return type - Note 23:
enable_ifand how to disable a member function - Note 24: How to disable a special member function
- Acronyms
- Bibliography
- Index
Andreas