Beginning C++ Through Game Programming, Second Edition 2nd Edition
| Michael Dawson (Author) Find all the books, read about the author, and more. See search results for this author |
Use the Amazon App to scan ISBNs and compare prices.
There is a newer edition of this item:
Customers who viewed this item also viewed
Customers who bought this item also bought
Editorial Reviews
About the Author
Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Product details
- Publisher : Cengage Learning PTR; 2nd edition (December 28, 2006)
- Language : English
- Paperback : 384 pages
- ISBN-10 : 1598633600
- ISBN-13 : 978-1598633603
- Item Weight : 1.75 pounds
- Dimensions : 7.5 x 1 x 9 inches
- Best Sellers Rank: #3,918,532 in Books (See Top 100 in Books)
- #1,266 in C++ Programming Language
- #2,878 in Game Programming
- #3,095 in Computer Graphics
- Customer Reviews:
About the author

Michael Dawson has worked as both a programmer and a computer game designer and producer. In addition to real world game industry experience, Mike earned his bachelor's degree in Computer Science from the University of Southern California. Currently, he teaches game programming in the Game Production Department of the Los Angeles Film School. Mike has also taught game programming to students through UCLA Extension and The Digital Media Academy at Stanford. He's the author of four books: Beginning C++ through Game Programming, Guide to Programming with Python, and C++ Projects: Programming with Text-Based Games. You can visit his website at www.programgames.com to learn more or to get support for any of his books.
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonReviewed in the United States on November 3, 2020
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
Dawson walks you through 10 chapters, each diving into a different aspect of the C++ language, starting simply and working up to more difficult topics. The chapter breakdown includes: types and variables, branching, loops, the STL, functions, references, pointers, classes, dynamic memory, and object-oriented programming. These topics really are the most fundamental building blocks of C++, and many are applicable to programming in any language. Lots of source code is shown, and the author explains each step along the way with an impressive amount of clarity. Even though I’d consider myself an intermediate to advanced programmer, I still found some things useful in this book, particularly the usage of the const keyboard which was always somewhat confusing to me. All the examples are simple command-line programs, so you don’t need any special libraries, just an IDE that can compile C++ code, such as Visual Studio which has a free version on Windows. If you use a different operating system, you can just get whatever free IDE you want for your platform as this book uses all standard C++ code so any compiler should work.
What I have found reading other books is that they may explain concepts well, and even show code, but sometimes either they don’t give enough context on how real usage would look or the examples are so complex as to be confusing for a novice. In this text, the author is clearly aiming to teach beginners and explains everything in concise terms without becoming too complex. In each chapter, there is another full example game shown, which could be typed into a computer and run. I did not actually test any of the code, as I’d rather just learn from reading, but I didn’t find any obvious errors. Each of these games are fairly straight-forward, with apps like guess my number, hangman, madlib, tic-tac-toe, etc. My one complaint is that the final chapter covers a full blackjack game, and this was much more complicated than the previous chapters and may be a bit too advanced. However, it still may be helpful to some to see what a more involved program might look like. While the title of the book is about “game programming” I wouldn’t say you need to be a gamer to gain insight here. Though having some interest or familiarly with games can help, I’d still recommend this book for anyone interested in C++ or just wanting to learn programming in general. The author manages to cover the most key aspects of the language without burdening beginners with the more arcane constructs that will likely confuse you.
Keep in mind, C++ is a beast of a language, and one book will not make you a pro overnight. After reading this title, you will still likely need other resources before you are ready to build your own apps or games. With gaming in particular, you will likely also need to learn how to use libraries, various APIs, etc. and none of that is covered here. So think of this as merely a light introduction, which will build a foundation your can bring to other more complex books. That said, I really can’t imagine a better book for people wanting to get started with programming in C++. This would work as a great first coding book for teenagers or even younger. I’m not sure there is a better beginning C++ book out there, and this is highly recommended.
1. Truly takes you from the beginning of C++. I am proficient in MATLAB, R, Stata, and a few other languages (historically learned Basic and Fortran in the 1980s) but C++ is my first compiled language of its type and first Object Oriented one too. BTW - C++ is amazing so far, very rich language, but lots to learn!
2. The order of the material is excellent and builds on the previous lessons/chapters. The writing is clear and error free. Most importantly, it starts with a short summary of a concept, then you write an enjoyable "game" script (think the old text based games for the most part) and run it. Then the author explains the code with additional Tips, Tricks, Traps, Hints, etc. This three step process with logical groupings shows the care of the thought put into this and likely the benefits of a fourth edition.
3. The chapters end with an excellent bulleted Summary, Q&A's, Discussion Questions, and Exercises to expand knowledge.
4. I am using Visual Studio Community 2019 as my IDE (which I highly recommend but there is a modest learning curve for VS vs. Code::Blocks IDE which is good too) and so far all the examples (quite a few) have compiled and ran without problem or error, very impressive based on my other book experiences. One note, if you set Warnings to act as Errors during compile in your settings for the compiler then I had only one issue. The use of Enumerations in one example program. I changed these the Enumeration to an Enumeration 'Class' (I am using C++17 with my VS 2019 and the Enum Class is safer and more flexible allowing you to specify types, encapsulating the name in the scope, and use type other than INT - all good things) and the warning went away. I also reset my default to allow compiling with warnings and then Enumerations provided no issue.
5. I bought both the paperback book and the kindle book. I call the kindle version (identical to the paperback) up on one of my screens and have Visual Studio on the other. I use this setup to help when I type the code into my VS cpp file and also do quick look ups on the kindle with search feature. I have the paperback open on my desk and have marked it up very extensively with two highlighters and three pen colors to reinforce ideas and concepts and draw attention to items important to me. This system has worked extremely well. I find having a marked up paper copy of the book is well worth the seemingly duplicative expense, at least for me since I learn better this way and can flip back and forth and use the index and TOC too. I still love the kindle version for all it can do to.
6. I took the time to write a detailed review because I am so impressed with the book and the detail and care the author took. I really would give it 6 starts if I could. I have five other new (C++17 ready) books on C++ and decided to use this one first after looking through them all. I am very glad I did.
Thank you to the author (Michael Dawson) for this fourth edition and sharing his skill with a noobie to C++ like me, to the publisher Cengage for publishing it, and of course to Amazon for carrying it in both paperback and Kindle and making the later a prime item. This was money well spent. Wishing you all good coding!
I read through all of the 1 star reviews and all of them were unwarranted because the reviewers bought this book expecting it to teach them how to program a game. THIS IS NOT what this book is for. This book is intended to teach you the ins and outs of the C++ language with a game programming perspective/theme.
Top reviews from other countries
Gave only four stars only because I haven't finished the book yet. For seasoned programmers the style is really for beginners, but if you haven't really done any serious c++ programming I think it's not a bad thing to go right back to basics. I like the easy pace so I like this book, and the print is quite large too, which is nice and refreshing if you want to get away from staring at small fonts on a laptop for hours.
Downloading the code was a piece of cake and in all a pleasant experience. Heartily recommended to anyone who wants to learn C++










