Exceptional C++ by Herb Sutter is the second book in Bjarne Stroustrup's C++ In Depth series, and includes a foreword by Scott Meyers.
Contents: Exceptional C++ contains 47 Items organized into eight major sections:
Generic programming and the C++ standard library.
Exception safety issues and techniques.
Class design and inheritance.
Compiler firewalls and the Pimpl Idiom.
Name lookup, namespaces, and the Interface Principle.
Traps, pitfalls, and anti-idioms.
Besides containing additional new material and information from Herb's print articles and columns, Exceptional C++ is also the authoritative reference for Guru of the Week issues #1 to #30, with (often considerably) revised and enhanced solutions.
Translations: Exceptional C++ is now available in Chinese, Chinese (Simplified), English, French, German, Italian, Japanese, Korean, Polish, Russian, and Turkish.
The following information has been compiled by the author.
In the Press: What Reviewers Are Saying About Exceptional C++
Since its publication, Exceptional C++ has received unanimously positive reviews. Here, in approximate reverse chronological order, are all the reviews I know about. If you know of other reviews not yet listed here, please tell me about them.
Current reviews on Amazon.com include many detailed editorial and customer reviews, by people ranging from industry notables to programmers slugging it out in the trenches. This is a good place to see what real-world developers are saying about the book. From the time the book was published to this writing (summer 2003), Exceptional C++ has always had an "average customer rating" of five stars (out of five). Thanks, everyone!
Victor Volkman reviewed both Exceptional C++ and More Exceptional C++ in the June 2002 issue of Windows Developer Magazine. He notes: "The Exceptional C++ books by Herb Sutter follow squarely in the tradition of Scott Meyers’ Effective C++ books. Specifically, the books present the best practices of C++ in pursuit of better software engineering." Thanks, Victor!
Stan Lippman reviewed Exceptional C++ in the November 2000 issue of C/C++ Users Journal's (CUJ) online C++ Experts Forum. Stan is a longtime C++ guru and former C++ Report editor-in-chief. He writes in part: "The book's treatment of exception safety alone makes it an invaluable addition to every C++ programmer's bookshelf. ... I don't see how a project attempting to program in the presence of exceptions can proceed without at least being familiar with this material." Stan then concludes: "Exceptional C++... is for the working programmer looking for ways to use C++ more effectively (and who among us isn't?) -- in particular, the Standard C++ language features and libraries. ... I can't imagine anyone reading this book and not learning something new. I know I did." Thanks, Stan!
The review in Dr. Bob's Programming Book Reviews concludes with the kind words: "[T]his is one of the books that should be on the mythical 'standard issue list' of a serious C++ software engineer. In almost all items there is good advice to be found. In others, you will be pointed at the pitfalls of software engineering using C++. Even the experienced C++ programmer will benefit from reading and rereading it." Thanks!
The September 2000 CodeGuru review by Essam Ahmed rates Exceptional C++ as 5/5, and says in part: "Far from a formal textbook, the author's writing style makes you feel as if he's right there going over each item with you. This makes the text engaging, interesting, and enjoyable to read. Overall this is an excellent resource for any serious C++ developer; ... this focused book provides a lot of value." Thanks, Essam!
In the August 2000 issue of Dr. Dobb's Journal, Gregory Wilson reviewed several books, including Exceptional C++. He concludes: "[Exceptional C++] ought to be read by anyone who expects to spend a year or two working with C++." Thanks, Gregory!
EXE magazine named Exceptional C++ its 1999 Book of the Year co-winner along with Nico Josuttis's great book The C++ Standard Library. Given the many excellent books that appeared in 1999, and the stature of the reviewer (Francis Glassborow), this really means something and is warmly appreciated.
In the May 2000 issue of Dr. Dobb's Journal, Al Stevens' column included some very nice comments about Exceptional C++. Al is a longtime C and C++ expert, and many readers will be familiar with his C/C++ column that's appeared in DDJ for many years now -- almost all the way back to the "running light without overbyte" days. Al wrote in part: "Exceptional C++ is the book I spent the most time with because it addresses experienced C++ programmers and encourages you to think about many aspects of C++ programming. ... Essential C++ and Exceptional C++ are both in an official Addison-Wesley series called the 'C++ In-Depth Series' edited by Bjarne Stroustrup ... Knowing Bjarne, I am sure that only books of quality will include his participation and endorsement. I'd be inclined to recommend them even if I had not read them. I did read them, and I recommend them." Thanks, Al!
April 2000's Compbookreview.com review by Richard Dragan says in part: "This book can definitely help raise your C++ class design skills to the next level. ... For the experienced developer seeking leading-edge knowledge of some of the best ways to use C++, Exceptional C++ is both a challenging and truly worthwhile source of information." Thanks, Richard!
Overload Magazine's review by Alan Griffiths rates Exceptional C++ as "Highly Recommended" (the highest rating) and opens by saying: "Let me save you some time: if you are interested in making effective use of C++ then this is a good book, buy it! [paragraph break] Oh, you want to know more..." (What a tease!) Thanks, Alan!
DevX Book Review of the Week for March 15, 2000 was Angelika Langer's and Klaus Kreft's very kind review of Exceptional C++. They write, in part: "Exceptional C++ is a highly recommendable book for the serious C++ programmer. Its main merit is that it gathers bits and pieces of wisdom that emerged in the community during the past couple of years and presents them as a fun-to-read book of digestible size." Thanks!
In the February 2000 issue of C/C++ Users Journal (CUJ), editor-in-chief Marc Briand wrote and published a very favorable review. He concludes: "There are a lot of C++ books out there. Most of them are rather unremarkable. They start off with the obligatory paean to OO, then crank through the features one-by-one. It is the rare book that takes a different approach, and the rarer one still that does so without being gimmicky. Exceptional C++ is one of those rare books. It's interesting, informative, and yes -- the puzzles are even fun." Thanks, Marc!
(Historical note: This was very gracious on Marc's part, considering that I was editor-in-chief of C++ Report at the time, with which CUJ competed. Since then C++ Report has ceased publication, and I have become a contributing editor of CUJ, but none of us knew about that when Marc wrote the review.)
In related news, Visual C++ Developer's Journal (VCDJ) has published an excerpt of Exceptional C++, taken from the section on Memory Management. You can get to it online from the VCDJ Jan 2000 issue Table of Contents page.
Exceptional C++ Via Amazon
If the above sounds interesting, check out Exceptional C++ on Amazon.com. Thank you for your interest in GotW and Exceptional C++!
Convener, ISO WG21 (C++ standards committee)
Visual C++ architect, Microsoft