REVIEW - The C++ Standard Library Extensions - A Tutorial and Reference

Title:

The C++ Standard Library Extensions - A Tutorial and Reference

Author:

Pete Becker

ISBN:

9780132797566

Publisher:

Pearson Education (2006)

Pages:

624pp

Reviewer:

Pete Goodliffe

Reviewed:

December 2006

Rating:

★★★★★

The 'tr1' extension to the standard C++ library is a large and comprehensive addition with much useful functionality. It draws heavily from theBoostlibraries and should become an important part of any C++ programmer's arsenal. At the time of writing, few compilers currently provide a version of 'tr1' in their C++ offerings, but almost all the tr1 functionality is available from Boost (albeit in the 'boost' namespace, not 'tr1') so all of the material in this book is immediately useful.

Enough of the background. This book is a comprehensive guide to a large library. It comes from a respected and authoritative author. It is a genuinely good tutorial and excellent reference.

The book reads well and introduces material at a well-judged pace, even if the author does have an unfortunate predilection for footnotes. (If you've read Becker's CUJ/DDJ columns you'll understand this! At least in book form these footnotes have a minor blessing - they're at the bottom of the page, so you don't have to keep turning paces to read them).

The questions at the end of each chapter are interesting. They are a great way for the reader to guage how much they understood. However, I wonder how many people will actually read them. Practicing programmers need the reference information available immediately, and will dwell less on these. Often the first question in each chapter asks you to decipher the evil template error messages that typically result from a single type error in the kind of monstrous template constructions that tr1 allows you to construct. Telling. This book is dense for a university level course text, but C++ programming courses may find it useful.

The book is marred by a few unfortunate typos and errors that weren't picked up at the editorial stage. In such a good book this is a real shame. The tutorial could also do with a little more practical application; the questions have a little of this, but good examples of some library usage in real code would be immensely beneficial.

I have yet to see a better book on this subject, and the bar has definitely been raised for further offerings. Highly recommended for C++ programmers.


Book cover image courtesy of Open Library.