Summary
In this chapter, we looked at various ways in which errors that are thrown by executables can be grabbed at compile time and runtime using asserts. We also learned about static assertion. We understood how exceptions are generated and how to handle them in the code. We also saw how unit testing can act as a savior to developers as they'll be able to identify any issues in the code at the beginning. We utilized mock objects for the classes that needed to be used in the test cases. We then learned about the debugger, breakpoints, watchpoints, and visualizing the data. We were able to locate the issues in the code using the debugger and fix them. We also solved an activity wherein we wrote the necessary test cases to check the accuracy of the functions that were used for parsing the files.
In the next chapter, we'll learn how to optimize our code. We'll review how the processors execute the code and access the memory. We'll also learn how to determine the excess time...