Book description
It’s easy to make lots of programming mistakes in C++—in fact, any program over a few hundred lines is likely to contain bugs. With this book, you’ll learn about many common coding errors that C++ programmers produce, along with rules and strategies you can use to avoid them.
Author Vladimir Kushnir shows you how to use his Safe C++ library, based in part on programming practices developed by the C++ community. You’ll not only find recipes for identifying errors during your program’s compilation, runtime, and testing phases, you’ll learn a comprehensive approach for making your C++ code safe and bug-free.
- Get recipes for handling ten different error types, including memory leaks and uninitialized variables
- Discover problems C++ inherited from C, like pointer arithmetic
- Insert temporary and permanent sanity checks to catch errors at runtime
- Apply bug prevention techniques, such as using separate classes for each data type
- Pursue a testing strategy to hunt and fix one bug at a time—before your code goes into production
Table of contents
- Safe C++
- Dedication
- SPECIAL OFFER: Upgrade this ebook with OâReilly
- Preface
- I. A Bug-Hunting Strategy for C++
-
II. Bug Hunting: One Bug at a Time
- 4. Index Out of Bounds
- 5. Pointer Arithmetic
- 6. Invalid Pointers, References, and Iterators
- 7. Uninitialized Variables
- 8. Memory Leaks
- 9. Dereferencing NULL Pointers
- 10. Copy Constructors and Assignment Operators
- 11. Avoid Writing Code in Destructors
- 12. How to Write Consistent Comparison Operators
- 13. Errors When Using Standard C Libraries
-
III. The Joy of Bug Hunting: From Testing to Debugging to Production
- 14. General Testing Principles
- 15. Debug-On-Error Strategy
- 16. Making Your Code Debugger-Friendly
- 17. Conclusion
- A. Source Code for the scpp Library Used in This Book
- B. Source Code for the files scpp_assert.hpp and scpp_assert.cpp
- C. Source Code for the file scpp_vector.hpp
- D. Source Code for the file scpp_array.hpp
- E. Source Code for the file scpp_matrix.hpp
- F. Source Code for the file scpp_types.hpp
- G. Source Code for the file scpp_refcountptr.hpp
- H. Source Code for the file scpp_scopedptr.hpp
- I. Source Code for the file scpp_ptr.hpp
- J. Source Code for the file scpp_date.hpp and scpp_date.cpp
- Index
- About the Author
- Colophon
- SPECIAL OFFER: Upgrade this ebook with OâReilly
- Copyright
Product information
- Title: Safe C++
- Author(s):
- Release date: May 2012
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781449321369
You might also like
book
Secure Programming Cookbook for C and C++
Password sniffing, spoofing, buffer overflows, and denial of service: these are only a few of the …
book
Optimized C++
In today’s fast and competitive world, a program’s performance is just as important to customers as …
book
C++ Reactive Programming
Learn how to implement the reactive programming paradigm with C++ and build asynchronous and concurrent applications …
book
C++ In a Nutshell
To-the-point, authoritative, no-nonsense solutions have always been a trademark of O'Reilly books. The In a Nutshell …