Top critical review
2.0 out of 5 starsGreat to prop open a door!
Reviewed in the United States on October 17, 2012
I'm sure there are a myriad of other reviews on this book, so I will get straight to the point. I am a novice programmer and I had to use this book as a textbook for a programming class I am taking.
Issues I had with the book:
1. Very often, the guiding factor in how the examples are written is how much ink it takes to print it the "technically" correct way versus the "real-world" correct way. For example, you will like get 5 or 6 chapters into the book before the authors even acknowledge that it is possible to create code blocks by enclosing statements in curly braces. Technically, you don't have to for a single statement, but most programmers use them to eliminate ambiguity.
2. The variables. This may be a matter of preference, but I always use variable names that are full words. I don't want to go to the trouble to remember that int i2 = 12; while int i3 = 33; It is inefficient and annoying to sift through the author's rather nondescript variable names, especially when they stack up correct and incorrect statements on top of one another.
3. This book was released for sale 7 days before the start of the Fall 2012 semester. I have found numerous ambiguities and errors, specifically in the introduction of pointers and references. Often the author will state one thing and provide an example that is the polar opposite of what was just stated. These statements tend to appear about 1/2" from one another. Consequently, you should get really familiar with cplusplus.com, stackoverflow.com, and msdn. You will be using them frequently.
4. The author tends to be pedantic about trivial subjects and then gloss over critical concepts. I forget how long chapter 2 was, but suffice it to say that brevity was nowhere to be found. Lippmann attempts to kill his readers with one pedantic bludgeoning after another with the minute details of the differences between short, int, long, long long and so forth.
5. Blame for this should probably fall on my school, but this is not a good intro or reference for beginners. I use it, to be sure, but often times the internet is a far better resource.
6. The assignments suck. They aren't hard, but they will bore you to sleep. We are halfway through the semester and I turned in a program last week, assigned from the book, which simply involved throwing an exception for dividing by zero. That's it. The authors don't really strive to make the problems interesting or challenging. Some students might like that. I don't.
7. The last of my major issues with this book is that the authors are horrendous about defining a variable in a different section, having three or four pages of text in between and then using that variable defined four pages back to initialize a new variable. So, prepare to do a lot of page flipping if you don't have a photographic memory.
I will end my review by saying that this book does not approach the subject of learning C++ like most any of the books you have used before. Oreilly, New Perspectives, Apress, and Addison Wesley--I've used technical books from all of these companies--my experience has been that these publishers typically locate someone who is an expert in the field (if not the architect of the language himself/herself)and who is capable, indeed eager, to speak in a comprehensible manner and teach others about the subject. C++ Primer 5th Edition does not have that tone at all.