 |
Imperfect C++: Practical Solutions for Real-Life Programming View Larger Image | Matthew Wilson Addison-Wesley, Paperback, Bk&CD edition, Published October 2004, 588 pages, ISBN 0321228774 | List Price: $44.99 Our Price: $35.50 You Save: $9.49 (21% Off)
| | | Availability: Out-Of-Stock |
Customer Reviews: 1 Average Customer Rating:      Write a Review and tell the world about this title! People who purchase this book frequently purchase: - Effective C++: 55 Specific Ways to Improve Your Programs and Designs, 3rd Edition; Scott Meyers, $38.95, 22% Off!
- C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond; David Abrahams, et al, $38.95, 22% Off!
- C++ Coding Standards: 101 Rules, Guidelines, and Best Practices; Herb Sutter, et al, $34.95, 22% Off!
- Exceptional C++ Style: 40 New Engineering Puzzles, Programming Problems, and Solutions; Herb Sutter, $34.95, 22% Off!
Books on similar topics, in best-seller order:Books from the same publisher, in best-seller order:
C++, although a marvelous language, isn't perfect. Matthew Wilson has been working
with it for over a decade, and during that time he has found inherent limitations
that require skillful workarounds. In this book, he doesn't just tell you what's
wrong with C++, but offers practical techniques and tools for writing code that's
more robust, flexible, efficient, and maintainable. He shows you how to tame C++'s
complexity, cut through its vast array of paradigms, take back control over your
code -- and get far better results.
If you're a long-time C++ developer, this book will help you see your programming
challenges in new ways -- and illuminate powerful techniques you may never have
tried. If you're newer to C++, you'll learn principles that will make you more
effective in all of your projects. Along the way, you'll learn how to:
- Overcome deficiencies in C++'s type system
- Enforce software design through constraints, contracts, and assertions
- Handle behavior ignored by the standard -- including issues related to
dynamic libraries, static objects, and threading
- Achieve binary compatibility between dynamically loading components
- Understand the costs and disadvantages of implicit conversions -- and the
alternatives
- Increase compatibility with diverse compilers, libraries, and operating
environments
- Help your compiler detect more errors and work more effectively
- Understand the aspects of style that impact reliability
- Apply the Resource Acquisition Is Initialization mechanism to a wide variety
of problem domains
- Manage the sometimes arcane relationship between arrays and pointers
- Use template programming to improve flexibility and robustness
- Extend C++: including fast string concatenation, a true NULL-pointer, flexible
memory buffers, Properties, multidimensional arrays, and Ranges
The accompanying CD-ROM contains a valuable variety of C++ compilers, libraries,
test programs, tools, and utilities, as well as the author's related journal
articles. New and updated imperfections, along with software libraries and example
code are available online at http://imperfectcplusplus.com.
Table of Contents
Preface.
Prologue.
I. CLASS TYPES.
1. Enforcing Design: Constraints, Contracts & Assertions.
2. Object Lifetime.
3. Resource Encapsulation.
4. Data Encapsulation and Value Types.
5. Object Access Models.
6. Scoping Classes.
II. SURVIVING THE REAL WORLD.
7. ABI.
8. Objects Across Borders.
9. Dynamic Libraries.
10. Threading.
11. Statics.
12. Optimisation.
III. FOUNDATIONS.
13. Types.
14. Arrays and Pointers.
15. Values.
16. Keywords.
17. Syntax.
18. Type defs.
IV. COGNISANT CONVERSIONS.
19. Casts.
20. Shims.
21. Veneers.
22. Bolt-Ins.
23. Template Constructors.
V. OPERATORS.
24. operator bool().
25. Fast, Non-Intrusive String Concatenation.
26. What's Your Address?.
27. Subscript Operators.
28. Increment Operators.
29. Arithmetic Types.
30. Short-Circuit!
VI. EXTENDING C++
31. Return Value Lifetime.
32. Memory.
33. Multidimensional Arrays.
34. Functors & Ranges.
35. Properties.
Epilogue.
References.
APPENDIXES.
Compilers & Libraries.
Watch that Hubris!".
Arturius.
The CD.
Customer Reviews
Customer Reviews: 1 Average Customer Rating:      Feb 3, 2005     viktor_kresse@hotmail.com from Canada Best C++ book from after Effective C++ Forget all books on template meta programming and coding standards. This is *the best book* for real programmers who do real work, not academic pope dreams.
|
 |