A thorough, exhaustively complete treatment of a complex subject. An essential reference for C++ programmers and a lengthy and boring book for anyone else.
I'm currently in the process on finishing Andrei Alexandrescu's Modern C++ Design, and don't have it in me to start reading another C++ templates book, at least not right away.
I must also admit that right now I do not have it in me to read the Slashdot thread that follows this review.
It is worth noting that this book was written by the moderators of comp.lang.c++.moderated so it should be technically accurate.
Posted to Misc-Books by Dan Shappir on 3/22/03; 11:53:45 AM
Personally, I shy away from people who talk about performance, unless I have good reason to believe they know what they are talking about. 9.8 times out of 10, they don't.
Interestingly, for all the power that Templates, overloading (especially of operators), C++ memory management, io streams, STL, etc, give you, there are so many idiosyncracies in its use that you need big books on the subject.
This becomes evident the more you try advanced things with the language. C++ is very powerful and very complicated. With this power not only comes responsibility, but a whole boat load of idioms that you must follow to use the features correctly.
C++ Templates: The Complete Guide is a wonderful book on a hairy subject. C++ template programming is the beginning of the "escape from C++". For example, STL is fantastically useful to a C++ programmer. To a Python, perl, Tcl, Lisp programmer it is a frustrating attempt at genericity. To a Java programmer, STL is looked upon with envy...