Top positive review
98 people found this helpful
Another keeper in my shelf. It covers C++11 standards very well.
on September 29, 2012
C++ Primer, 5th ed. is a great book for an intermediate level C++ programmer. I would NOT recommend this book to a novice, but if you went through an introductory book or two and have some basic programming experience, this book will take you to the next level.
The authors introduce STL material from the beginning. So, this book more or less shares pedagogical philosophy with another excellent introductory book "Accelerated C++" by Koenig & Moo (who is a co-author of this book). IMO, this is a superior approach, compared to a more traditional, part1-C-part2-C++ type of approach.
What I like about this book, in particular, is the authors' attention to detail and their pursuit of "completeness". Not only does the book cover all the basic building blocks of the language, it also describes subtleties and nuances in the language that can easily be missed or misunderstood by showing you lots of easy-to-understand examples. In this sense, I would say that this book contains most of the materials covered in topical books such as "Effective C++: 55 ways..." by S. Meyers. Althought Meyers' book is a decent one on its own, I feel like you wouldn't really need to read Meyers' book if you go through this book patiently.
Well, what I described so far doesn't differ much from what you can find in other reviews for the previous editions. However, newly added materal on the new C++11 extension certainly justifies new edition. The authors give clear explantion of new addtions (such as auto type, decltype, list initialization, rvalue reference, move operator, lambda expression, shared/unique pointers, just to name a few). These new materials are repeatedly used throughout the book, so you will feel very comfortable with these by the time you finish the book. This C++11 extension alone, in my opinion, justifies the price of the book.
The book is in its fifth edition, and this shows in the book's clean, organic structure. Fonts and spaces are perfect for a programming book, and cross referencing is very nicely documented so that you can remind yourself of your previous reading 2 weeks ago. Examples are succint and easy to understand, although they tend to be independent snippets of codes rather than parts of a grand scheme.
All in all, this is a great intermediate level book on C++. It is the kind of book that you want to keep in your shelf as a reference. I highly recommend this book to those who want to learn C++.