Vous voulez voir cette page en français ? Cliquez ici.


or
Sign in to turn on 1-Click ordering.
or
Amazon Prime Free Trial required. Sign up when you check out. Learn More
More Buying Choices
Have one to sell? Sell yours here
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions [Paperback]

Herb Sutter
4.9 out of 5 stars  See all reviews (30 customer reviews)
List Price: CDN$ 51.99
Price: CDN$ 32.75 & FREE Shipping. Details
You Save: CDN$ 19.24 (37%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 6 left in stock (more on the way).
Ships from and sold by Amazon.ca. Gift-wrap available.
Want it delivered Monday, April 21? Choose One-Day Shipping at checkout.

Book Description

Nov. 18 1999 0201615622 978-0201615623 1
Preface Exceptional C++ shows by example how to go about sound software engineering in standard C++. Do you enjoy solving thorny C++ problems and puzzles? Do you relish writing robust and extensible code? Then take a few minutes and challenge yourself with some tough C++ design and programming problems.

The puzzles and problems in Exceptional C++ not only entertain, they will help you hone your skills to become the sharpest C++ programmer you can be. Many of these problems are culled from the famous Guru of the Week feature of the Internet newsgroup comp.lang.c++.moderated, expanded and updated to conform to the official ISO/ANSI C++ Standard.

Each problem is rated according to difficulty and is designed to illustrate subtle programming mistakes or design considerations. After you've had a chance to attempt a solution yourself, the book then dissects the code, illustrates what went wrong, and shows how the problem can be fixed. Covering a broad range of C++ topics, the problems and solutions address critical issues such as:

* Generic programming and how to write reusable templates * Exception safety issues and techniques * Robust class design and inheritance * Compiler firewalls and the Pimpl Idiom * Name lookup, namespaces, and the Interface Principle * Memory management issues and techniques * Traps, pitfalls, and anti-idioms * Optimization


Frequently Bought Together

Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions + Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) + Effective STL: 50 Specific Ways to Improve Your Use of the Standard Template Library
Price For All Three: CDN$ 98.25

Show availability and shipping details


Customers Who Bought This Item Also Bought


Product Details


Product Description

From Amazon

Aimed at the experienced C++ programmer, Herb Sutter's Exceptional C++ tests the reader's knowledge of advanced C++ language features and idioms with several dozen programming puzzles and explanations. This book can definitely help raise your C++ class design skills to the next level.

Based on the author's Guru of the Week Web column, this book poses a series of challenging questions on the inner workings of C++, centering around generic programming with the Standard Template Library (STL), exception handling, memory management, and class design. Even if you think you know C++ well, most of these problems will teach you something more about the language and how to write more robust classes that are "exception safe" (meaning they don't throw any handled exceptions or leak resources). Don't think this is just "language lawyering," though. The author's explanations stress sound programming principles (favoring simplicity) and idioms (such as the Pimpl idiom for class design that promotes faster compile times and better maintainability, or using "smart" auto_ptrs with STL.) Judging from the range and depth of these examples, Sutter's command of the inner workings of C++ is impressive, and he does an excellent job of conveying this expertise without jargon or a lot of theory.

After reading this book, C++ designers will learn several "best practices" of how to write robust, efficient classes that are "exception safe." Chances are you'll gain a better understanding of memory management techniques and working with STL too. 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. --Richard Dragan

Topics covered: Advanced C++ programming tutorial, generic programming, tips for string classes, containers and STL, temporary objects, exception-safe code tutorial, virtual functions, class inheritance, the Pimpl idiom, namespaces, memory management, C++ memory areas, overloading new and delete, using smart pointer with auto_ptr, using const, casts, and hints for better performance and code maintainability.

Review

"This book is a very valuable book for a wide range of C++ developers. The great thing about the questions and solutions dealing with exceptions is that they present the most important design considerations for creating *any* C++ class." -- Dennis Mancl, Lucent

"This book provides more techniques in solving real life problems in C++. The book is very well written and informative." -- John Kwan, Hewlett-Packard

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

What Other Items Do Customers Buy After Viewing This Item?


Customer Reviews

3 star
0
2 star
0
1 star
0
4.9 out of 5 stars
4.9 out of 5 stars
Most helpful customer reviews
2 of 2 people found the following review helpful
5.0 out of 5 stars A lot of hours of C++ learning. April 6 2002
Format:Paperback
This is by far one of the best books on C++ I've ever bought. I am not going to claim that I've read this because this is not a book you 'read' before going to sleep. Even if you consider yourself a C++ guru, you really need to go spend a lot of time on each exercise - if you want to ace them, that's it.
If you aren't a C++ expert but at least can find your way, make sure you have Stroustroup's on your table when you get to this. Try to answer every question on this book with the help of Stroustroup's. You will learn *a lot* from the experience, and have a lot of fun, too. Also, if you run everything you do by your compiler, you will find compiler bugs, which for me is a plus because saves time in the long run.
As for the exercises themselves, all of them, without exception, are worth every penny. Not a single one has an obvious answer (a perfect one - sure you can give some decent if you know C++ well), and from all of them you will learn something valuable.
Finally, a quick list of the topics, since Amazon.com doesn't have one online at this time:
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. Memory Management. Traps, Pitfalls and Anti-Idioms. Miscellaneous Topic.
Each of the topic has 4-7 subtopics, each of them with a few exercises.
Don't miss this book.
Was this review helpful to you?
2 of 3 people found the following review helpful
Format:Paperback
This book presents advices more or less in the same format than books from the Effective C++ serie. What is similar is that topics are divided in 47 small items of few pages each. The difference is that the author first ask questions to the readers or propose exercises and encourage the reader to put down the book and to take the time to think about the problem and then come back to read his answer. This format is more or less original as I have seen something similar in Tom Cargill C++ Programming Style book.

I have read this book pretty fast which is a good sign of my interest in a book but in the same time this book did not leave me a strong impression that will make me remember this reading for a long time. It is hard for me to say exactly why but I think that it is because most items focuses on very small details of C++. Some of these problems are very hard and probably is an indication that the book targeted audience is advanced C++ users which is not a bad thing by itself but I am not convinced that mastering these small details actually has a high impact on someone programming skills. It is probably just a matter of topic choices as I really appreciate much more the sequel than this book.

My review will probably not affect your decision to read or not this book. You will have to read it to find out if you like it but hopefully I have been helpful to let you know what to expect from this book.
Was this review helpful to you?
5.0 out of 5 stars Excellent book ! Nov. 2 2003
Format:Paperback
Excellent book !
Provides a lot of great example of "tricky"(yet common) C++ code that could stump developers for hours !
A must book for any serious C++ developer !
Was this review helpful to you?
5.0 out of 5 stars An Exceptional C++ Book June 13 2003
Format:Paperback
This book is a very valuable addition to any intermediate or advanced C++ programmer's library. The organization is similar to Scott Meyers' very good "Effective C++" books in that they are organized into brief "items" dealing with specific problems that C++ software developers face. The items are helpfully grouped into sections on generic programming and the C++ standard library, exception safety, memory management, etc. Beyond that its hard to compare this book with Meyers' books; they are complementary in many ways. But I think the "Exceptional C++" books have some advantages over Meyers' books: Each of the items begin with a puzzle to solve. This gets the reader more actively involved in the subject matter and brings it into sharper focus (Meyers tends to lose your focus by rambling a bit). Once you've had a chance to think about the presented problem, there is a clear and concise explanation of both the problem and a well considered solution. Each explanation is highlighted by concise "guidelines" and "common mistake" statements. (I wish these were summarized and indexed in one place for quick reference.) The emphasis is on writing clear, simple, reliable code; not on clever solutions to tricky problems. This book is a distillation of discussions that took place in the "Guru of the Week" Internet forum and so is a product of the thinking and experience of many exceptional minds. "Exceptional C++" will help any serious C++ programmer toward better code design. It's well worth the time to read it.
Was this review helpful to you?
5.0 out of 5 stars An excellent addition to my C++ library Aug. 7 2002
By uniq
Format:Paperback
Are you sure that you know how to write exception safe code? How good are you at the details of writing classes? How well do you know C++ memory management?
You will find many interesting, if not surprising, answers to these and other questions in "Exceptional C++" even if you have years of C++ experience. If not, maybe you should consider writing your own book.
The book is thorough and fresh. Some solutions are not an easy read (although the author has succeeded in making the book reasonably entertaining), but digging through them is a very satisfying experience. In the hierarchy of the quality C++ reading, this book will find its place next to Sroustrup's "The C++ Programming Language" and Scott Meyers' books.
The book is NOT for a C++ novice, but rather for a mature developer who strives to excel in C++ design and coding styles. It focuses on the complexities and subtleties of using template libraries, C++ language itself, and the elements of good design.
The book is written in the problem-solution style to illustrate many of not so obvious questions. As the author dives deeper in each solution, he delivers along the way very concise and useful programming tips.
This book is an excellent and very satisfying read!
Was this review helpful to you?
Want to see more reviews on this item?
Most recent customer reviews
5.0 out of 5 stars Marvelous book of puzzles
Read the title of the book, put a strong accent on "Puzzles" and then ask yourself, whether you like small sparkling pieces of knowledge put in the form of Q and A. Read more
Published on April 17 2002
5.0 out of 5 stars Fantastic Book From An Expert
This is an excellent advanced text on C++. If you have the Meyers books down cold, this is the next stop in your C++ journey. Read more
Published on Jan. 17 2002 by Philip R. Heath
5.0 out of 5 stars Helps you leap from an intermediate to advanced programmer
If you think differently after reading a book it was worth the money. This book is such.
You should also take a look at "effective/more effective C++" and "C++ effective... Read more
Published on Aug. 29 2001 by A SE
5.0 out of 5 stars Exceptional book!
"Exceptional C++" is a really exceptional book! I was able to finally understand some subtle issues in this language. Read more
Published on April 26 2001 by Dmitry Vostokov
5.0 out of 5 stars Exceptional book!
"Exceptional C++" is a really exceptional book! I was able to finally understand some subtle issues in this language. Read more
Published on April 26 2001 by Dmitry Vostokov
5.0 out of 5 stars Exceptional book!
"Exceptional C++" is a really exceptional book! I was able to finally understand some subtle issues in this language. Read more
Published on April 26 2001 by Dmitry Vostokov
5.0 out of 5 stars Exceptional book!
"Exceptional C++" is a really exceptional book! I was able to finally understand some subtle issues in this language. Read more
Published on April 26 2001 by Dmitry Vostokov
5.0 out of 5 stars Exceptional book!
"Exceptional C++" is a really exceptional book! I was able to finally understand some subtle issues in this language. Read more
Published on April 26 2001 by Dmitry Vostokov
Search Customer Reviews
Only search this product's reviews
ARRAY(0xaa8a8708)

Look for similar items by category


Feedback