Book description
To say that C++ programmers embrace metaprogramming is a real stretch. Outright rejection is probably more accurate. And yet, C++ template metaprogramming is ideal for performing automatic compile-time optimization. With this example-driven ebook, you’ll learn how improved metaprogramming techniques in C++11 and C++14 can help you avoid a lot of mistakes and tedious work by making the compiler work for you.
Authors Edouard Alligand and Joel Falcou show you how the process works and what it takes to build and apply a basic metaprogramming toolbox. Then comes the real payoff: you’ll learn about a set of existing metaprogramming techniques you can use to perform fast and precise metaprogramming tasks without error—including the Boost.MPL, Boost.Hana, and Brigand libraries.
- Understand basic metaprogramming concepts: programs whose input and output are programs themselves
- Learn how metaprogramming principles can help make your code more compact, generic, elegant, and less error-prone
- Explore how features in C++11 and C++14 make the design of metaprograms easier
- Improve performance, reduce maintenance, and test less often
Publisher resources
Table of contents
- Preface
- 1. Introduction
- 2. C++ Metaprogramming in Practice
- 3. C++ Metaprogramming and Application Design
Product information
- Title: Practical C++ Metaprogramming
- Author(s):
- Release date: September 2016
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781491955031
You might also like
book
Advanced Metaprogramming in Classic C++
Advanced Metaprogramming in Classic C++ aims to be both an introduction and a reference to C++ …
book
Hands-On Design Patterns with C++
A comprehensive guide with extensive coverage on concepts such as OOP, functional programming, generic programming, and …
video
Further Exploration of C++ Templates and Metaprogramming
Designed for intermediate level C++ programmers, this course focuses on the advanced features and techniques made …
book
Learning Boost C++ Libraries
Solve practical programming problems using powerful, portable, and expressive libraries from Boost In Detail Filled with …