C++ Primer (5th Edition) 5th Edition
| Josée Lajoie (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.
Fully updated and recast for the newly released C++11 standard, this authoritative and comprehensive introduction to C++ will help you to learn the language fast, and to use it in modern, highly effective ways. Highlighting today’s best practices, the authors show how to use both the core language and its standard library to write efficient, readable, and powerful code.
C++ Primer, Fifth Edition, introduces the C++ standard library from the outset, drawing on its common functions and facilities to help you write useful programs without first having to master every language detail. The book’s many examples have been revised to use the new language features and demonstrate how to make the best use of them. This book is a proven tutorial for those new to C++, an authoritative discussion of core C++ concepts and techniques, and a valuable resource for experienced programmers, especially those eager to see C++11 enhancements illuminated.
Start Fast and Achieve More
- Learn how to use the new C++11 language features and the standard library to build robust programs quickly, and get comfortable with high-level programming
- Learn through examples that illuminate today’s best coding styles and program design techniques
- Understand the “rationale behind the rules”: why C++11 works as it does
- Use the extensive cross-references to help you connect related concepts and insights
- Benefit from up-to-date learning aids and exercises that emphasize key points, help you to avoid pitfalls, promote good practices, and reinforce what you’ve learned
Access the source code for the extended examples from informit.com/title/0321714113
C++ Primer, Fifth Edition, features an enhanced, layflat binding, which allows the book to stay open more easily when placed on a flat surface. This special binding method—notable by a small space inside the spine—also increases durability.
Frequently bought together
Customers who viewed this item also viewed
Editorial Reviews
About the Author
Josée Lajoie, now at Pixar, was a member of IBM Canada’s C/C++ compiler development team, and chaired the core language working group for the original ANSI/ISO C++ standardization committee.
Barbara E. Moo has nearly thirty years of software experience. During her fifteen years at AT&T, she worked closely with C++ inventor Bjarne Stroustrup and managed the C++ development team for several years.
Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Product details
- Publisher : Addison-Wesley Professional; 5th edition (August 6, 2012)
- Language : English
- Paperback : 976 pages
- ISBN-10 : 0321714113
- ISBN-13 : 978-0321714114
- Item Weight : 3.57 pounds
- Dimensions : 7.1 x 2 x 9.1 inches
- Best Sellers Rank: #24,361 in Books (See Top 100 in Books)
- #4 in C++ Programming Language
- #16 in Object-Oriented Design
- #63 in Computer Programming Languages
- Customer Reviews:
About the author

Discover more of the author’s books, see similar authors, read author blogs and more
Customer reviews
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
I read the first three chapters straight thru, then hit chunks elsewhere. Given the book's size, I'd bet that few of the 5- or 4-star reviewers have read much of the text in detail.
The book is quite good in sections, but overly verbose elsewhere. In trying to be precise, the authors are frequently the reverse -- and wordily so! One example is in chapter 2, where classes are introduced, classes being a central concept of OOP languages. The authors define a very simple class consisting only of a few data members, but all their sample code uses the "struct" keyword. Structs pre-existed in C and were widely used. (C Structs are what evolved into C++ classes; they are *almost* but not quite identical to classes.) The problem is that the authors never tell you what a struct is, and keep referring to the struct in their sample code as a "class". Thus, when you see "struct" in their sample code, you must go outside the book to learn what "struct" is and how it differs from a "class". (Google: "c++ struct vs class") Sections like this are obscure and irritating, and there are too many of them.
In parallel with this book, I read Stephen Davis' "C++ for Dummies", which is excellent. Davis' writing is sparse, clear and precise, as are his code examples, and not overly sprinkled with "cutsie" comments. Davis is far better organized. He starts with basics and gradually moves up to complex topics such as copy/move constructors, polymorphism and class templates. Whether programming newbie or experienced C programmer, I'd strongly recommend Davis' book.
As a tip to any beginners, read through the book lightly for the first time. What I mean is that don't attempt to understand everything right away and don't focus too much on the details. Make a note of the areas you had difficulty understanding, do a slight research to see if you can grasp it right away, but don't focus on that too much. You'll be surprised how much of the earlier information will become clear and a second nature to you as you progress further. Once you're done with your first read-through, go back and see if you still don't understand any of the areas you've marked down. I'm sure that you'll be able to eliminate many of them. At this point, focus heavily on the areas you still have difficulty with. Of course, results will vary and not everyone learns the same way, but this has worked out very well for me. That's how I study for everything. I read through any material very lightly the firs time around, to get the general feeling and find the areas I'll be focusing on, and then go back to focus on those details. This strategy helped me maintain 4.0 in Computer Science, so the results are real (but once again, it may vary by person).
The Physical:
The physical quality of the book is amazing. The binding really helps the book lay flat while avoiding awkward spiral binding found in some books. The text is printed clearly is and is easy to read.
The Content:
The overwhelming consensus is that C++ is a more difficult language to grasp (than other languages) as a person new to programming. In the little bit of time I have spent learning JavaScript compared to C++, I can confirm that statement as being true.
This book does not provide a magic bullet for grasping unusual concepts. It does however explain everything in detail and in a manner that is clear. Areas of the book can quickly become overwhelming especially if previous information is not clearly understood.
I am currently taking a Udemy course in parallel with reading this book and each learning mechanism compliments the other. I also am referencing a github repository with completed exercises for concepts I am struggling with. Typically I will read 5-6 pages and try to apply that knowledge in a program. I find that if I spend too much time reading without much time practicing the concepts, then the information is lost in memory.
The book has an excellent index in the back that makes using this as a reference manual very appealing.
The book is quite dense and moves over some complicated concepts rather quickly. I am often having to reread paragraphs and practice code to fully understand what the book is trying to tell me. This book is a great resource for someone wanting to learn C++. If you are absolutely new to programming, you will want a second (more) beginner friendly source of information to aid in understanding some difficult concepts.
Top reviews from other countries
If you are a beginner I would recommend going through learncpp.com before reading this book. If you buy this book as a beginner, persevere past the first chapter. The first chapter will be quite daunting and maybe discouraging at times to a beginner. The chapters immediately after that are a bit easier and help to tie together some ideas introduced in the first chapter.
Overall, a good and thorough book, with no mistakes in it.











