

Vladimir Kushnir obtained his Ph. D. in physics at the Institute for Solid State Physics, Academy of Sciences of the USSR.
Meer over Vladimir KushnirSafe C++
How to Avoid Common Mistakes
Samenvatting
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
Specificaties
Inhoudsopgave
Part 1: A Bug-Hunting Strategy for C++
1. Where Do C++ Bugs Come From?
2. When to Catch a Bug
3. What to Do When We Encounter an Error at Runtime
Part 2: 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
Part 3: 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
Appendix A: Source Code for the scpp Library Used in This Book
Appendix B: Source Code for the files scpp_assert.hpp and scpp_assert.cpp
Appendix C: Source Code for the file scpp_vector.hpp
Appendix D: Source Code for the file scpp_array.hpp
Appendix E: Source Code for the file scpp_matrix.hpp
Appendix F: Source Code for the file scpp_types.hpp
Appendix G: Source Code for the file scpp_refcountptr.hpp
Appendix H: Source Code for the file scpp_scopedptr.hpp
Appendix I: Source Code for the file scpp_ptr.hpp
Appendix J: Source Code for the file scpp_date.hpp and scpp_date.cpp
Index
Anderen die dit boek kochten, kochten ook
Net verschenen
Rubrieken
- aanbestedingsrecht
- aansprakelijkheids- en verzekeringsrecht
- accountancy
- algemeen juridisch
- arbeidsrecht
- bank- en effectenrecht
- bestuursrecht
- bouwrecht
- burgerlijk recht en procesrecht
- europees-internationaal recht
- fiscaal recht
- gezondheidsrecht
- insolventierecht
- intellectuele eigendom en ict-recht
- management
- mens en maatschappij
- milieu- en omgevingsrecht
- notarieel recht
- ondernemingsrecht
- pensioenrecht
- personen- en familierecht
- sociale zekerheidsrecht
- staatsrecht
- strafrecht en criminologie
- vastgoed- en huurrecht
- vreemdelingenrecht