- 出版社: Addison-Wesley Professional; 1 (1999年11月28日)
- 丛书名: C++ in Depth Series
- 平装: 240页
- 语种： 英语
- ISBN: 0201615622
- 条形码: 9780201615623, 0785342615623
- 商品尺寸: 18.8 x 1.3 x 23.1 cm
- 商品重量: 340 g
- ASIN: 0201615622
- 用户评分: 分享我的评价
- 亚马逊热销商品排名: 图书商品里排第3,024,368名 (查看图书商品销售排行榜)
Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions (英语) 平装 – 1999年11月28日
买满 ￥99.00 立减 ￥10.00: 满足条件自动优惠
Herb Sutter is the author of three highly acclaimed books, Exceptional C++ Style, Exceptional C++, and More Exceptional C++ (Addison-Wesley). He chairs the ISO C++ standards committee, and is contributing editor and columnist for C/C++ Users Journal. As a software architect for Microsoft, Sutter leads the design of C++ language extensions for .NET programming.
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 ANIT-IDIOMS.
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.
1. It was written from the generic library writer point of view.
2. The difficulty of writing exception safe code is rated artificially low. Dealing with exception safety issues is rated at difficulty <= 9, at the same time trivial class construction issues (like passing parameters by const reference) are rated at 7.
IMHO, the contents of this book does contradict its main advice about the possibility for mere mortals to use c++ exceptions beyond the absolute minimum of catching them at the origin.
So, if you are not a member of small super-guru team writing general purpose library (like boost or may be just working for thoughtworks) you will be much better off by not using exceptions at all. Especially if you are working on a large or very large project, where involvement of under-qualified engineers is inevitable over the long run.