Industrial-Sized Deals Books Gift Guide Books Gift Guide Shop Men's Athletic Shoes Learn more nav_sap_plcc_6M_fly_beacon $5 Albums egg_2015 All-New Amazon Fire TV Subscribe & Save Gifts Under $50 Amazon Gift Card Offer minions minions minions $30 Off Amazon Echo $15 Off All-New Fire Kindle Black Friday Deals TheGoodDinosaur Outdoor Deals on HTL

Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your email address or mobile phone number.

Exceptional C++ Style: 40 New Engineering Puzzles, Programming Problems, and Solutions 1st Edition

11 customer reviews
ISBN-13: 078-5342760422
ISBN-10: 0201760428
Why is ISBN important?
This bar-code number lets you verify that you're getting exactly the right version or edition of a book. The 13-digit and 10-digit formats both work.
Scan an ISBN with your phone
Use the Amazon App to scan ISBNs and compare prices.
Sell yours for a Gift Card
We'll buy it for $6.48
Learn More
Trade in now
Have one to sell? Sell on Amazon
Rent On clicking this link, a new layer will be open
$15.68 On clicking this link, a new layer will be open
Buy used On clicking this link, a new layer will be open
$25.42 On clicking this link, a new layer will be open
Buy new On clicking this link, a new layer will be open
$33.50 On clicking this link, a new layer will be open
More Buying Choices
14 New from $33.50 16 Used from $21.43
Free Two-Day Shipping for College Students with Amazon Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student

Get Up to 80% Back Rent Textbooks
$33.50 FREE Shipping on orders over $35. Only 11 left in stock (more on the way). Ships from and sold by Gift-wrap available.

Frequently Bought Together

  • Exceptional C++ Style: 40 New Engineering Puzzles, Programming Problems, and Solutions
  • +
  • Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions
  • +
  • More Exceptional C++: 40 New Engineering Puzzles, Programming Problems, and Solutions
Total price: $108.26
Buy the selected items together

Special Offers and Product Promotions

  • Take an Extra 30% Off Any Book: Use promo code HOLIDAY30 at checkout to get an extra 30% off any book for a limited time. Excludes Kindle eBooks and Audible Audiobooks. Restrictions apply. Learn more

Editorial Reviews Review

Herb Sutter may well know the C++ programming language better than anyone else. He's worked with the language for years; he sits on its international standards committee; he works on the Microsoft Visual C++ team--his list of qualifications is astounding. That is, however, only part of the reason you should pay attention to Exceptional C++ Style. A more important reason is that he understands how to teach software developers: To wit, he issues challenges and dares the programmers to figure them out. Sutter grasps the importance of not lecturing smart people, and knows that guided exploration goes a very long way.

To give an example of Sutter's challenges (40 of them, graded by difficulty, appear in this dense book) would take more space than is available here. Know, however, that while some of them deal with obscure parts of C++, most do not, and the majority of the challenges deal with aspects of the language you use all the time. Sutter's approach doesn't consist exclusively of challenges and solutions, either--the author takes time to distill the exercises into design recommendations, making it easy for programmers to remind themselves of what they've learned. --David Wall

Topics covered: How to take a journeyman's skill with C++ and turn it into something more masterly, by exploring the behavior of C++ and its various parts in detail. Coverage deals with inheritance and other aspects of object orientation, exception handling, memory management, and templating.

From the Back Cover

Software "style" is about finding the perfect balance between overhead and functionality... elegance and maintainability... flexibility and excess. In Exceptional C++ Style , legendary C++ guru Herb Sutter presents 40 new programming scenarios designed to analyze not only the what but the why and help you find just the right balance in your software.

Organized around practical problems and solutions, this book offers new insight into crucial C++ details and interrelationships, and new strategies for today's key C++ programming techniques--including generic programming, STL, exception safety, and more. You'll find answers to questions like:

  • What can you learn about library design from the STL itself?
  • How do you avoid making templated code needlessly non-generic?
  • Why shouldn't you specialize function templates? What should you do instead?
  • How does exception safety go beyond try and catch statements?
  • Should you use exception specifications, or not?
  • When and how should you "leak" the private parts of a class?
  • How do you make classes safer for versioning?
  • What's the real memory cost of using standard containers?
  • How can using const really optimize your code?
  • How does writing inline affect performance?
  • When does code that looks wrong actually compile and run perfectly, and why should you care?
  • What's wrong with the design of std::string?

Exceptional C++ Style will help you design, architect, and code with style--and achieve greater robustness and performance in all your C++ software.


Hero Quick Promo
Holiday Deals in Kindle Books
Save up to 85% on more than 1,000 Kindle Books. These deals are valid until November 30, 2015. Learn more

Product Details

Be on your way to exceptional C style with 3 free programming puzzles. [PDF]
  • Paperback: 352 pages
  • Publisher: Addison-Wesley Professional; 1 edition (August 12, 2004)
  • Language: English
  • ISBN-10: 0201760428
  • ISBN-13: 978-0201760422
  • Product Dimensions: 7.4 x 0.7 x 9.1 inches
  • Shipping Weight: 1 pounds (View shipping rates and policies)
  • Average Customer Review: 4.5 out of 5 stars  See all reviews (11 customer reviews)
  • Amazon Best Sellers Rank: #798,382 in Books (See Top 100 in Books)

More About the Author

Herb Sutter is a recognized expert on C++ software development and regularly gives invited talks at conferences around the world. Author of more than 130 technical articles, Herb is also secretary of the ISO/ANSI C++ standards committee, contributing editor and columnist for C/C++ Users Journal, and former editor-in-chief of C++ Report. His popular "C++ Guru of the Week" series is published on the primary Internet newsgroup for the C++ language, comp.lang.c++.moderated, which he has moderated since its inception in 1995. Contact him at

Customer Reviews

Most Helpful Customer Reviews

19 of 19 people found the following review helpful By Michi Henning on August 13, 2004
Format: Paperback
This book is not so much about C++ "style" in the usual sense (that is, how to indent or where to put the curly braces) but rather, about sound coding practices that make your code simpler, better, faster, and more maintainable. What you get is a collection of 40 items that each examine a specific topic, outline the potential problems with a particular approach, and then proceed to show you how things can be improved. Most importantly, each item is strong on the rationale: you are not just told how to do it better, but *why* it is is better to do something in a particular way.

There is something for everyone in this book, from the obscure and astonishing ("How many consecutive '+' characters can appear in a standards-conforming program?"), to the pragmatic ("When should you use inlining?"), to the advanced ("How generic should you make your templates, and why?").

I've been programming in C++ for 16 years now, and I learned quite a lot from reading this book. Yet, you don't have to be a C++ veteran to appreciate the advice that is provided: novice C++ programmers will find the items just as useful as old hands at C++ programming.

The book is well written, in clear and concise style, and never boring. (A number of creative footnotes even produce the occasional laugh.) The material is well organized, presented in groups of topics that relate to each other, and the table of contents and index make it easy to locate a topic for reference. And the bibliography contains things that are actually worth reading, rather than meaningless filler material.

I most appreciated Herb's honesty when dealing with various not-so-great aspects of C++. He doesn't shy back from pointing out when things are bad and simply shouldn't be used (such as exception specifications).
Read more ›
1 Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
27 of 29 people found the following review helpful By Amazon Customer on August 5, 2004
Format: Paperback
Did you know the "snprinf(...)" that we use in our programs is not part of the C++ standard? Did you know that the "export" keyword has little or no benefit to C++ templates and the source code of the implementation still needs to be shipped? Do you know what primary templates are? Did you know that Accessibility checking is the last things a compiler checks for - after checking for overload resolution? Do you make your virtual functions private? Well, you really should. Do you know what Herb Sutter's favorite Starbucks drink is? Do you know what the "const" keyword really buys you? How about inline-ing?

If you answered no to even one of these questions, you should read Herb Sutter's Exceptional C++ Style, 40 New Engineering Puzzles, Programming Problems, and Solutions book. I must say that I am not doing justice in reviewing this book, since each item in this 40 item collection should really reviewed independently as each one is very well written, useful and practical.

To start, this book is well organized into sections as one would expect such type of organization with book of such type. One differing aspect is with the Case Studies at the end of the book. Mostly around the string class, but nonetheless, they are very informative. The author has taken already-out-there-being-used code and depicts them for their style. Various "guidelines" given by the author in the Case Studies section makes the developer's life a whole lot simpler. One of my favorite guidelines - throughout the book - is the one the author gives about the decision that each developer goes thru when designing a class and wants to make a decision about what to make friend, a member and a non-member of a class:

- Always make it a member if it has to be one.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
10 of 10 people found the following review helpful By Paul M. Dubuc on November 11, 2004
Format: Paperback
This book is a great addition to Herb Sutter's previous two "Exceptional" C++ books. It follows a very similar question and answer format that helps the reader think about a problem before being given the answer and so is more effective in helping you learn than are some other books. It gives very clear and concise answers to each problem with guidelines drawn from each lesson highlighted throughout the text that help you remember the main points.

The only problem now that I have is, with all three of these books on my shelf, it takes longer to figure out where I read something of on a particular topic. The topical sections of each book overlap (E.g., sections covering exception eafety, memory managment and inheritance appear in all three books.) and they are all written at the same level of difficulty overall. The later books do make plenty of references back to the earlier ones as well as some other very good C++ books but this material would be better organized in one volume rather than three. Perhaps they should have been published as three editions of the same book rather than three separate books. That's the only thing I can think of that would have made them more useful. Even so this book, like the other two, is very good exercise for keeping C++ programming skills sharp. Well done!
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
6 of 6 people found the following review helpful By Jack D. Herrington on October 12, 2004
Format: Paperback
This is a very interesting read. There is lots of information for bit-twiddlers who like pushing the limits of the language syntax and templates. But there is also lots of high level information which is on the application architecture and good advice level. He is a big proponent of encapsulation over inheritance, which is something that I also advocate having been in a number of deeply and twisty code bases.

There are some sections that I found a little too technical, but that is a personal issue. Though it is nice to have my brain stretched now and again. Illustrations are kept to a minimum. The text is somewhat dry, but it's still a solid read.

I recommend this book for any advanced C++ programmer. It's well worth your time and money. It's not so clear to me that an intermediate programmer would get much out of it, and I think beginners should stick to something like Bruce Eckel's Thinking in C++.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse

Most Recent Customer Reviews

Set up an Amazon Giveaway

Amazon Giveaway allows you to run promotional giveaways in order to create buzz, reward your audience, and attract new followers and customers. Learn more
Exceptional C++ Style: 40 New Engineering Puzzles, Programming Problems, and Solutions
This item: Exceptional C++ Style: 40 New Engineering Puzzles, Programming Problems, and Solutions
Price: $33.50
Ships from and sold by