Home :: Books :: Computers & Internet  

Arts & Photography
Audio CDs
Audiocassettes
Biographies & Memoirs
Business & Investing
Children's Books
Christianity
Comics & Graphic Novels
Computers & Internet

Cooking, Food & Wine
Entertainment
Gay & Lesbian
Health, Mind & Body
History
Home & Garden
Horror
Literature & Fiction
Mystery & Thrillers
Nonfiction
Outdoors & Nature
Parenting & Families
Professional & Technical
Reference
Religion & Spirituality
Romance
Science
Science Fiction & Fantasy
Sports
Teens
Travel
Women's Fiction
C++ Templates: The Complete Guide

C++ Templates: The Complete Guide

List Price: $59.99
Your Price: $50.45
Product Info Reviews

<< 1 2 >>

Rating: 5 stars
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.

Rating: 5 stars
Summary: A Valuable Resouce for Generic Programming in C++
Review: This book covers the C++ template mechanism in depth, and, possibly more importantly, in readable prose.

I particularly liked the clarifications regarding overload resolution when function templates are involved and the discussion of various metaprogramming and traits techniques (such as SFINAE - "Substitution Failure Is Not An Error").

I also learned a few things that I didn't know about at all. For example, I didn't realize that template template parameters could have default values and that base class names can hide template parameters.

This book is a necessary resource for those writing generic libraries as some of today's techniques require a full understanding of the template mechanism. It is definitely going on my bookshelf with the rest of my favorite C and C++ books, and I highly recommend it to anyone interested in the C++ field.

(Note also, unlike Hyman Rosen, I actually *like* the syntax of C++ and as far as I'm concerned, angle brackets are as good a choice as anything else.)

Rating: 5 stars
Summary: A great guide for template writers
Review: This book is a great guide for C++ developers interested in writing generic (C++ templates) code.

It is definitely NOT FOR BEGINNERS. Readers should already have some experience in C++ development. An experience using template libraries such as STL, ATL, WTL, collectioin classes in MFC or other will be very helpful.

The book contains a concize guide on C++ template basics in the first part with a detailed reference guide in the following parts.

I have found on the authors' website that the book is also available in Russian and Polish languages.

Rating: 5 stars
Summary: Nice, but may not be a good first choice.
Review: This book is encyclopedic. It will tell you everything about templates, both every detail at the language level and everything interesting someone has done with templates in the last 10 years. It even tells you furture changes that might happen to templates in 4-8 years when the C++ standard is revised. This last is useful to know, to keep in mind what templates cannot do, as sometimes it feels like templates can do anything. Though the writing is somewhat dry, it is always clean and to-the-point, and the authors have the highest reputations for accuracy and expertise.

The entire last 200 pages of this 500 page book, from Metaprograms on through the entire section on Advanced Applications, describe things software developers should look to libraries for. Smart pointers, generic functors, metaprogramming, etc., are all weak without a supporting library, and there are good libraries freely available. The book gives references to them, which is good, but it mainly tells you how to write similar things from scratch, which is somewhat useless except to the few hundred living people who write the libraries. Unless you were curious, that is.

The only technique I will be using myself in production code, as opposed to getting from quality libraries, is traits and policies. The book does spend 40 pages covering this, and it touches all the bases, but _Modern C++ Design_ has a much fuller coverage, which this book admits at the end of its section.

Although this book is excellent, and you will eventually want it to reach "guru" status as your understanding of templates grows, you may want _Modern C++ Design_ first, if your present interest is mainly in policy-based design and you prefer to start with applications rather than fundamentals. You may also want to consider the new _C++ Template Metaprogramming_ if your present interest is metaprogramming. But if you are looking for a solid, general grounding in everything templates can do and have been used to do, _C++ Templates: the Complete Guide_ is exactly what you are looking for.


Rating: 2 stars
Summary: Book is good but
Review: This book is great & gives you the insight of "C++ templates" but for beginners even advanced C++ programmer who want to start templates please DO NOT buy this book at first sight...go for STL Programming by Herbert Schildt. This book assumes you already KNOW templates VERY WELL.

Rating: 2 stars
Summary: Book is good but
Review: This book is great & gives you the insight of "C++ templates" but for beginners even advanced C++ programmer who want to start templates please DO NOT buy this book at first sight...go for STL Programming by Herbert Schildt. This book assumes you already KNOW templates VERY WELL.

Rating: 5 stars
Summary: THE book on C++ templates
Review: This book joins the (short) list of standard C++ references like Stroustrup's "C++ Programming Language", Josuttis' STL book, and Meyers' "Effective C++". Very well designed, it allows you to go through the important issues quickly in one chapter and also provides an in-depth chapter for the lawyers. All this is followed by chapters devoted to detailed discussion of what are rapidly becoming the standard tools of template programming: traits, policy classes, and metaprogramming. The last part "Advanced Applications" describes several template elements/utilities: tuples, functors, smart pointers. I would also recommend Alexandrescu's "Modern C++ Design" which goes into programming with template policy classes in great detail.

The only gripe I have against this book is a very very minor one: the authors for some inexplicable reason decided to write "T const* p" instead of "const T* p" in function prototypes. Both are correct and both mean the same thing but nobody uses the first convention whose major fault is that it's too close to "T *const p" - a different thing entirely. Plus the second convention is such an ingrained idiom that fighting it is pure nonsense which makes the book initially hard to read. Example: what does "char const* const& a" mean? (p. 17) On top of that the reader cannot simply substitute one convention for the other, as the 25,000 C++ books already in print are still going to *be* there plus the x billion lines of legacy C++ code is not leaving any decade soon! So one has to keep *both* conventions in mind in order to read the text. It's really not much of a big deal but I wonder: what were they thinking?

Rating: 5 stars
Summary: THE book on C++ templates
Review: This book joins the (short) list of standard C++ references like Stroustrup's "C++ Programming Language", Josuttis' STL book, and Meyers' "Effective C++". Very well designed, it allows you to go through the important issues quickly in one chapter and also provides an in-depth chapter for the lawyers. All this is followed by chapters devoted to detailed discussion of what are rapidly becoming the standard tools of template programming: traits, policy classes, and metaprogramming. The last part "Advanced Applications" describes several template elements/utilities: tuples, functors, smart pointers. I would also recommend Alexandrescu's "Modern C++ Design" which goes into programming with template policy classes in great detail.

The only gripe I have against this book is a very very minor one: the authors for some inexplicable reason decided to write "T const* p" instead of "const T* p" in function prototypes. Both are correct and both mean the same thing but nobody uses the first convention whose major fault is that it's too close to "T *const p" - a different thing entirely. Plus the second convention is such an ingrained idiom that fighting it is pure nonsense which makes the book initially hard to read. Example: what does "char const* const& a" mean? (p. 17) On top of that the reader cannot simply substitute one convention for the other, as the 25,000 C++ books already in print are still going to *be* there plus the x billion lines of legacy C++ code is not leaving any decade soon! So one has to keep *both* conventions in mind in order to read the text. It's really not much of a big deal but I wonder: what were they thinking?

Rating: 5 stars
Summary: Comprehensive and Thorough
Review: This is a book that the C++ community has been in need of for several years, and it seems that an ideal team of authors has come together for this: Nicolai Josuttis again contributes the thoroughness and lucid writing that has made his earlier book _The C++ Standard Library_ such a pleasure to read, and David Vandevoorde contributes historical background about the evolution of C++ standard and its implementations that help to understand some of the peculiarities of how C++ works today and some of the directions it's likely to evolve in.

The book is divided into 4 parts. Part I gives a basic overview of the template mechanisms in C++ and part II goes into more detail on this. Part III applies templates to standard problems, while part IV covers more exotic uses of templates similar to what is discussed in Alexandrescu's _Modern C++ Design_. Even for a reasonably experienced template user like me, there were many details I learned even from the most fundamental part I.

This is a near perfect book (apart from a few apparent bugs in the code examples that hopefully will get corrected) that will greatly benefit any programmer who works with template based code.

Rating: 5 stars
Summary: A must have
Review: This is the second book to buy after "the C++ programming language" book. Template is the "thing" right now in C++. On the other hand, in order to write a code that uses template correctly and effectively you really need to understand templates. This book is the only book out there that will help you understand how to write good code using templates. The best part about this book is that it not trying to tell that there is a magic tricks to use or some great solution, which by using it your programs will be better. It just gives you a great understanding of what really need an explanation. It also very well writing and organized.


<< 1 2 >>

© 2004, ReviewFocus or its affiliates