- Paperback: 1312 pages
- Publisher: Addison-Wesley Professional; 2 edition (May 25, 2014)
- Language: English
- ISBN-10: 0321992784
- ISBN-13: 978-0321992789
- Product Dimensions: 7.3 x 1.9 x 9.1 inches
- Shipping Weight: 4 pounds (View shipping rates and policies)
- Average Customer Review: 206 customer reviews
- Amazon Best Sellers Rank: #38,261 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Programming: Principles and Practice Using C++ (2nd Edition) 2nd Edition
Use the Amazon App to scan ISBNs and compare prices.
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
Frequently bought together
Customers who bought this item also bought
About the Author
Bjarne Stroustrup is the designer and original implementer of C++, as well as the author of The C++ Programming Language, Fourth Edition (Addison-Wesley, 2013), and A Tour of C++ (Addison-Wesley, 2014) and many popular and academic publications. Dr. Stroustrup is a managing director at Morgan Stanley in New York City, as well as a visiting professor at Columbia University and a Research distinguished professor at Texas A&M University. He is a member of the U.S. National Academy of Engineering, an IEEE Fellow, and an ACM fellow. His research interests include distributed systems, design, programming techniques, software development tools, and programming languages. He is actively involved in the ISO standardization of C++.
Top customer reviews
The material was designed with an instructor-led course in mind. I wish I'd had the opportunity to work through it that way, especially with other students.
If you can't have that either, then just be warned that you'll need to follow the recommendations in the "Notes to the Reader" section. Pace yourself, read closely, and be prepared to re-read. Do the exercises... maybe not all of the exercises, but certainly any that look like they'll be a challenge. It plainly says that they chose to "understate" rather than "hype". I found a number of places that I wish they'd hyped a bit more. If you skim this text, you will miss important things.
This book uses an approach that manages to be both practical and unique. Most programming books have you following examples that you'll probably never use. Since every programmer will go on to do different things, that's almost unavoidable. So, this book does the same, but in a way that the lessons stick.
After the language basics, they have you drawing a lot of 2D shapes. Even if you'll never do that, work through the chapters anyway. You'll learn lots of about inheritance and substitution, among other things.
After that, they have you build a template class that mimics the standard vector. However, you don't just write final code. You follow the same logical progression that a real world program often takes. You start off by building enough to solve the problem at hand. Then, you refine the code to solve additional problems, including some that are caused by your early solutions. You wind up with something that looks very much like the official vector. The best part is that you understand why it looks that way and what it does. Even though you'll probably never (and probably shouldn't) build your own vector, you walk away with a clear understanding of a gigantic stack of concepts -- all based on a real-world challenge.
I don't have any meaningful negative criticism, but the book is not quite perfect. I understand not wanting to "hype" language features, but I felt that some things were unnecessarily muted. For instance, I feel like lots of people don't really understand the way that memory works or the dangers of not carefully allocating/freeing it. The material covers that, but introduces the related problems quite a bit later than I would expect and with a subdued tone. A close reading of the text mitigates that concern. Having an instructor to show you what to draw red boxes around would help a lot, as well.