Books · Addison-Wesley, 2001
Modern C++ Design
Generic programming and design patterns applied. The book that put “policy-based design” into the language people use for C++.
By the time you have finished reading and thinking about this material you will wonder why you ever doubted the power of C++ templates.
It shows how templates can generate specialized components — smart pointers, functors, object factories, visitors — from small orthogonal policies instead of deep class hierarchies. ISBN 978-0201704310.