REVIEW - Exceptional C++ Style - 40 New Engineering Puzzles, Programming Problems, and Solutions

Title:

Exceptional C++ Style - 40 New Engineering Puzzles, Programming Problems, and Solutions

Author:

Herb Sutter

ISBN:

9780201760422

Publisher:

Addison-Wesley Professional (2004)

Pages:

325pp

Reviewer:

Francis Glassborow

Reviewed:

October 2004

Rating:

★★☆☆☆

I thought that readers of C Vu would like a quick review of Herb Sutter's latest volume in his Exceptional C++ series. As the author kindly sent me an autographed copy I can safely review it without being accused of skimming cream off the top of the pile of books awaiting review.

This book consists of 40 chapters in the same format as he used in the previous two volumes. Most chapters lead with a one or more Junior Guru questions (things that any competent local expert should be able to tackle, but too many cannot). All the chapters have at least one Guru question. Those require a great deal of expertise to get entirely right. A couple of the Guru questions might stretch even the author's understanding - I am not entirely convinced that everything he writes in the two chapters on export is correct.

After the questions come the author's answers and sprinkled among those are sound-bites masquerading as guidelines. Well every good guideline should be expressible as a sound-bite, the skill is in ensuring that the sound-bites are also good guidelines.

One of the features Herb's book shares with Scott Meyer's books is that they are written for normal C++ programmers who are sufficiently professional to want to understand what they are doing and want to write correct code.

A typical example is item 16 (Mostly Private) that has no Junior Guru question. Herb has his feet solidly on the ground in recognising just how extensive misunderstanding of visibility and access is among even pretty expert C++ programmers. This is one of Herb's characteristics that make him an exceptional (pun intended) author, he spends time learning about the things that cause real problems to practitioners in the field and then tries to address them.

I have heard people dismiss some of his writing as dealing with things that are far too difficult for the working programmer. Such dismissal is seriously mistaken; working programmers who think books such as this are beyond them should find some other job because they are accidents waiting to happen.

Now before I am accused of waffling again, let me draw this reviewed by Herb Sutter and Andrei Alexandrescu. Time to start dropping hints to your loved ones because that book should be out in time for Christmas.


Book cover image courtesy of Open Library.