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:

Anthony Williams

Reviewed:

April 2007

Rating:

★☆☆☆☆

I had high hopes for this book, as Addison Wesley is a respected publisher of C++ books, and Pete Becker is project editor for the next edition of the C++ Standard, and has contributed a lot of time and effort into the development and publication of the Technical Report described in this book. Unfortunately, I was sorely disappointed. Subtitled "A Tutorial and Reference", I feel that this book fails to meet either goal.

A key part of a reference book is the index, and for a reference to a library I would expect every function, class and macro to be in the index. This is not the case. For example, many of the type traits classes are not in the index, and the only reference in the index to the unordered (hash) containers by name is to the header synopsis in the appendix rather than the chapter which describes them. Not only that, but some of the entries are just wrong: the only index entry for result_of is for page 141, but result_of is not mentioned until page 142, and that is only a cross-reference to the real section, which starts on page 148.

Having the reference material interspersed amongst the descriptive text and examples makes it really hard to use this book as a tutorial. It has no narrative flow, which makes it hard to read in a linear fashion. Exercises are included at the end of each chapter, but they often require that you've read and inwardly digested the reference material, rather than following on from a nicely explained tutorial. For many functions, there is just a terse summary of its operation followed by some example code, with little in the way of descriptive text explaining what the function does, and why one might want to use it.

A final, minor note: in my copy, the print quality is really poor. Some of the text is supposed to be black on grey, but in my copy it comes out as grey on slightly-paler grey, which is really hard to read. This varies from page to page, and might just be particular to this copy; I've never had this problem with Addison Wesley books in the past.

Overall, I'm glad I didn't pay the full cover price for this book, and I don't think I'll ever refer to it again. Instead, I'll usethe actual TR1 draftfor reference, and the Boost docs/examples as tutorial notes, since just about every component from TR1 is based on aBoostlibrary.


Book cover image courtesy of Open Library.