Rating:  Summary: Just what the doctor recommended Review: A good and long-overdue addition to any C++ programmer's library. The book is the most up-to-date treatment of the C++ templates (warning: it's only about templates, there's absolutely nothing about C++ in general in there), all the esoterica that you've picked in pieces from the C++ User's Magazine, on-line, and in a dispersed form in the latest Stroustrup (though presented more extensively--it's more than you'll find, even in bits, in BS's TCPP.) All those nagging questions you had about all kinds of partial specialization, metaprogramming, "typename" controversies, ".template" and "->template", etc., all covered clearly, with good examples of implementation and use. One chapter goes over the future directions and rationale behind some of the creepiest features, so you'll be in a very good shape after having worked through this very well-written book. Btw, it's not as big as it looks, they simply printed it in big fonts on thick paper. So that it looks deserving a hardback edition (with all the price-related ramifications, I guess <G>.) Otoh, it's easy on the eyes. I've found it very helpful, it's probably been the best C++ book I've read in about two years--and I buy and read nearly all this stuff as soon as it's out, so while it is the best, it is not the only book I've read during this time. I'd say it's very to the point, no-nonsense, there's nothing far fetched, nothing improbable, no typical puttering over temporal and immaterial accidentals of the latest standard, no condescending pedantry by self-proclaimed gurus in quest of high priesthood in an artifically constructed area of "intellectual discourse", no pompous babbling about absolute minutiae couched in an inflated pseudo-scientific jargon, like one can find in some of the other recent books. "C++ Templates" is refreshigly simple and clean. Highly recommended, buy it off the net right here, even w/o looking, no disappointment possible. The only thing I disliked is the fonts selection (typical for Addison-Wesley, btw): I abhor this annoying custom of printing code in an arial-like, sans-serif typeface; a smaller, regular serif font--something more in contrast with the main body of text--would be ways better; I much prefer what O'Reilly or Prentice-Hall in the Stevens books do in that respect--their visual style is so much more readable and pleasing to the eye. That's nitpicking, of course, but my evaluations must be very strict, so there you have it <G>.
Rating:  Summary: A worthy reference Review: A very good reference book on the subject. It made many things more clear to me that I had been uncertain about. The only weakness lies in Part IV: Advanced Applications, chapter Smart Pointers, and chapter on Function Objects abd Callbacks, which do not exploit their subject to the full extent. I recommend the book Andrei Alexandrescu: Modern C++ Design for more discussion on these.
Rating:  Summary: Great book on templetes Review: Actually, the ONLY book on this topic, that covers the topic well actually... This book will be the bible in the topic, and it should .. Very well written packed with examples and how to's, etc... Great learning experience. For c++ people, you should read this book, and go right to Modern C++ Design. A very good combo. One of the best things about the book is that it had a section dedicated on some of the futures changes to this topic as templates are still fairly developing. You know what to expect if you are an architect.
Rating:  Summary: Great book on templetes Review: Actually, the ONLY book on this topic, that covers the topic well actually... This book will be the bible in the topic, and it should .. Very well written packed with examples and how to's, etc... Great learning experience. For c++ people, you should read this book, and go right to Modern C++ Design. A very good combo. One of the best things about the book is that it had a section dedicated on some of the futures changes to this topic as templates are still fairly developing. You know what to expect if you are an architect.
Rating:  Summary: The only book solely dedicated to C++ templates Review: Although by no means I am an expert in templates, the few things I know, I have learned over time mostly by reading other people's code or monitoring the newsgroups. Love them or hate them, a modern C++ programmer can't live today without knowing templates. While there are many books out there teaching various aspects of C++, I can't think of one dedicated to C++ templates. I welcome this book and would like to thank the authors for making it possible.
Rating:  Summary: A Definitive Reference to C++ Template Implementations Review: Hi, David Vandevoorde and Nicolai Josuttis write a definitive reference to C++ template implementations. This book comprises of four key sections including fundamental template implementations, in-depth template implementations, template designs, and advanced template designs (libraries). The authors are extremely thorough in their explanations of all essential template implementation techniques and provide an unprecedented in-depth analysis on C++ template parameters, arguments, specialization, and overloading. The analysis on these techniques is very valuable. One reason is because in most cases the authors include examples of implementations that do not work and then provide working solutions. For example, they discuss template argument deduction processes especially for template function overloading. There is even a chapter where they analyze C++ compilers and different template instantiation models. In C++ Templates: The Complete Guide, the authors discuss essential C++ template designs and implementation techniques and provide valuable analysis along with some of the more important topics, making this book a definitive reference to C++ template implementations. In section three and four, Vandevoorde and Josuttis discuss and demonstrate powerful C++ designs utilizing C++ template techniques from previous sections. Topics and examples in these sections incorporate advanced C++ template designs and implementations similar to the foundation of the STL. One example is element binding as in std::pair. I recommend C++ Templates: The Complete Guide to all real-world C++ programmers.
Rating:  Summary: A Definitive Reference to C++ Template Implementations Review: Hi, David Vandevoorde and Nicolai Josuttis write a definitive reference to C++ template implementations. This book comprises of four key sections including fundamental template implementations, in-depth template implementations, template designs, and advanced template designs (libraries). The authors are extremely thorough in their explanations of all essential template implementation techniques and provide an unprecedented in-depth analysis on C++ template parameters, arguments, specialization, and overloading. The analysis on these techniques is very valuable. One reason is because in most cases the authors include examples of implementations that do not work and then provide working solutions. For example, they discuss template argument deduction processes especially for template function overloading. There is even a chapter where they analyze C++ compilers and different template instantiation models. In C++ Templates: The Complete Guide, the authors discuss essential C++ template designs and implementation techniques and provide valuable analysis along with some of the more important topics, making this book a definitive reference to C++ template implementations. In section three and four, Vandevoorde and Josuttis discuss and demonstrate powerful C++ designs utilizing C++ template techniques from previous sections. Topics and examples in these sections incorporate advanced C++ template designs and implementations similar to the foundation of the STL. One example is element binding as in std::pair. I recommend C++ Templates: The Complete Guide to all real-world C++ programmers.
Rating:  Summary: comment Review: I have not read C++ Templates. This is just a comment on Jan Bielawski's review of this book (I know, it's bad form to comment on another review... oh well).
There IS a reason to prefer "char const a" over "const char a". That reason is that "char const a" makes about 10 times more sense within the context of the C/C++ type syntax. You see, C++ type declarations make sense when read right to left. "char**" is read as "a pointer to a pointer to a char". "char**&" is " a reference to a pointer to a pointer to a char". "const" always goes to the right of what is const. When "const" refers to a pointer, of course it goes to the right of the pointer. "char* const" is a const pointer to a char. And thus logically the const should also be to the right of the typename. "char const * const" is a const pointer to a const char. If you do "const char * const", that breaks all convention. What is that? A const pointer to a char const? const is supposed to go to the RIGHT of what is const. If sometimes it goes to the right and sometimes it goes to the left, it makes it that much harder to mentally parse complicated types. It's true that many books use "const char", but that doesn't mean it's the best way to do it.
The review asks what "char const* const& a" means. Easy. Read it right to left. "a is a reference to a const pointer to a const char". Switch the "char" and the "const", and you have a nonsensical mess.
Rating:  Summary: another essential Review: I was initially a bit at a loss as to what you can say about this book. Both David and Nicolai are formidable authorities in the C++ language and established writers. Nicolai is well known for the "Standard C++ Library" and David wrote a wonderful book of solutions to the exercise problems posed in 3d edition of the "C++ language" by Bjarne Strustroup. Just their qualifications by themselves automatically reserve space on my IT bookshelf. That said, I have to say something about the book, so let me start with a little history. Template features were initially introduced into C++ a long time ago. Originally their usage was pretty much limited to their original purpose: creating generic containers. The biggest breakthrough for the template feature was probably their usage in generic programming research led by Alex Stepanov, which eventuated in the development of the Standard Template Library that we know and love. After that breakthrough more and more people started realizing the richness of the template feature, especially the fact that it can be used to perform both quantitative and "type" calculations at compile time. This resulted in great proliferation of C++ template programming, many tricks, techniques, libraries and approaches have formed, such as "template metaprogramming". These days no self-respecting (and hirable) C++ programmer can avoid knowing a certain amount about this topic. Many popular books have included introductions to template programming of varying quality. But no dedicated book was so far available; initially due to the lack of demand and later due to the newness of the field and lack of experience. But as the popularity of template programming increased I among many others started to feel a sharp pain due to a lack of one definitive guidebook on the subject. This is where David and Nicolai's book comes in. The book is both a methodical textbook and an indispensable reference. The writing is very clear and well-paced, ideas are introduced in good order. The book was a pleasure. In short: the template bible has been written. Study it.
Rating:  Summary: A Good Book Review: The book is extremely well organized and explained. But there is a but and is not about the book. Is about who's going to follow it and learn something from it. I am suffocated by Spaghetti Oriented Code for the last 15 years or so.
|