clear, concise and very carefully explained.
By the time this review arrives into C Vu, colleges and universities in the UK will only be about a month and a half away from the start of a new academic year and with that, there is a new cohort of students going into the increasingly popular Computer and Video Games courses.
Typically, the first year of these requires the students to learn C++ and unfortunately, the quality of the books often recommended are very poor (such as Teach Yourself C++ in 28 days) - the reason for the recommendations are normally down to a very short amount of time before the next stage of the course.
Up to now, there were few decent books that taught C++ (and the STL) and how to use these within a game. This book fills the void. It is a very good book that covers the required material. It does require you to have to a bit more knowledge than a beginner, but not be an expert. As the book is a 2004 vintage, it is also standard compliant (okay, it explicitly has return 0 at the end of main() which is no longer required, but that is minor).
The book covers the major aspects of C++ (such as inheritance and encapsulation) in a very easy to understand and accessible way. The examples for the games are clear, concise, well documented, and very carefully explained. It uses nothing other the STL to demonstrate how to implement the code, which means that anyone with a new-ish compiler can join in the learning.
Why does it not get the highly recommended rating?
The chapter on pointers really lets the book down. While the explanations and diagrams make it easier to understand than many books, it is still made more complex than is really required. There is also no form of exception handling when new is used - a fundamental flaw with no real excuse for why is it not treated. There are too many times that I have seen code from second year students where memory handling goes unchecked. It is a pity this was omitted.
If your offspring is off in September, pack a copy of this book and they will not be sorry. Recommended