Everybody knows how is tricky to manage all the complexity and the feature that c++ provides. From memory allocation to copy constructor ending up with address manipulation, It's very easy to make a mistake and sometimes is difficult to find the reason of it.
Safe C++ is a book for intermediate C++ users who wants avoid common mistakes that usually happens. From memory leaks to comparison operator, the book explains how a simple macro definition can help you to remove problems. The book is easy to read for who is practical with C++ and the 140 pages that composes it flows very fast. The book is composed by 17 short chapters, each of which tackles a specific issue:
Safe C++ is a book for intermediate C++ users who wants avoid common mistakes that usually happens. From memory leaks to comparison operator, the book explains how a simple macro definition can help you to remove problems. The book is easy to read for who is practical with C++ and the 140 pages that composes it flows very fast. The book is composed by 17 short chapters, each of which tackles a specific issue:
The first 3 chapters are sort of introduction to the specific issues treated later in the book:
Chapter 1: Where does c++ bugs come from?
Chapter 2: When to catch a bug?
Chapter 3: What to do when we encounter an error at runtime.
The middle chapters are more specific and tackles a specific issue:
Chapter 4: Index out of bounds
Chapter 1: Where does c++ bugs come from?
Chapter 2: When to catch a bug?
Chapter 3: What to do when we encounter an error at runtime.
The middle chapters are more specific and tackles a specific issue:
Chapter 4: Index out of bounds
Chapter 5: Pointer Arithmetic
Chapter 6: Invalid Pointers, References and Iterators
Chapter 7: Uninitialized Variables
Chapter 8: Memory Leaks
Chapter 9: Deferencing NULL pointers
Chapter 10: Copy Constructors and Assignment operators
Chapter 11: Avoid writing code in the destructors
Chapter 12: How to write consistent comparison operators
Chapter 13: Errors when using Standard C libraries
The last three chapters talks about testing and how to help the debugging process:
Chapter 14: General testing principles
Chapter 15: Debug-On-Error strategy
Chapter 16: Making your code debugger-friendly
This book explains how to avoid most common mistakes and bad pratices when programming in C/C++. It's a good book for intermidiate and can help also beginners to understand some tricky behaviour of C++. Together with other more general books as the pragmatic programmers series and so on, can be a good reading to master a good coding style.