Exceptional C++ Paperback – 18 Nov 1999
|New from||Used from|
- Choose from over 13,000 locations across the UK
- Prime members get unlimited deliveries at no additional cost
- Find your preferred location and add it to your address book
- Dispatch to this address when you check out
Frequently bought together
Customers who viewed this item also viewed
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.
To get the free app, enter your mobile phone number.
Would you like to tell us about a lower price?
If you are a seller for this product, would you like to suggest updates through seller support?
Aimed at the experienced C++ programmer, Herb Sutter's ExceptionalC++ tests any reader's knowledge of advanced C++ language features and idioms with several dozen programming puzzles and explanations. This is a book that can definitely help bring your C++ class design skills to the next level.
Based on the author's Guru of the Week Internet column, this book poses a series of challenging questions on the inner workings of C++, centring 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". Don't think this is just "language lawyering" though. The author's explanations stress sound programming principles (favouring simplicity) and idioms (such as the Pimpl idiom for class design that promotes faster compile times and better maintainability, or using "smart" auto_ptr's 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 at conveying this expertise without jargon or a lot of theory.
After reading this book, C++ designers will learn several "best practices" at how to write robust, efficient classes that are "exception safe" (meaning they don't throw any handled exceptions and don't leak resources). 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++, ExceptionalC++ is both a challenging and truly worthwhile source of information. --Richard Dragan, Amazon.com
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.
"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
Customers who bought this item also bought
There was a problem filtering reviews right now. Please try again later.
I'm unsure of the purpose of this book in education or a professional environment. Read the Effective C++ book if you want help making neater, leaner and more robust C++ Effective C++: 55 Specific Ways to Improve Your Programs and Designs (Professional Computing)
I have read several books on C++, and this is the one that offers more valuable information in the least space. It is incredibly dense. If after reading your C++ manual you only have money to buy one book, buy either Meyer's one or this one. Meyer's is easier(less advanced), and this one is wittier. It's your choice.
And it's not just a 'puzzle' book - although it does highlight some tricky issues to do with templates and name lookup, which might conceivably appear in an unimaginative job interview.
And it's not just about the language feature of exceptions. All aspects of the language are covered, but the section on exceptions is particularly good.
Nor is it 'advanced' in the sense that many practitioners of C++ would consider, e.g. template metaprogramming, or non-portable hacks that take advantage of memory layout of compilers. Instead this is advice at an intermediate level, assuming you know the syntax and purpose of C++, but exploring their most appropriate use.
The structure of the book does involve a series of posed questions, but they differ wildly in how specific or general they are. You can see them more as a rhetorical device to frame the subsequent discussion, rather than questions you must answer (unless you want to retrospectively crown yourself guru of the week, of course).
Each question is followed by a significant discussion of a particular language feature, and summarised advice and recommended principles. Therefore the book is similar in structure to Effective C++. There is some overlap between the books, although even where similar material is included, there is differences in how much detail is given.
To some extent, this book is a victim of its own success. A lot of the advice given here can now be found in other books. But its legendary status mean that like Effective C++, this is still essential reading as soon as you've graduated from introductory tomes.