C++ Primer (4th Edition) and over one million other books are available for Amazon Kindle. Learn more

Buy Used
Used - Very Good See details
$1.24 & eligible for FREE Super Saver Shipping on orders over $25. Details

or
Sign in to turn on 1-Click ordering.
 
   
Kindle Edition
 
   
Have one to sell? Sell yours here
C++ Primer (3rd Edition)
 
 
Start reading C++ Primer (4th Edition) on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

C++ Primer (3rd Edition) [Paperback]

Stanley B. Lippman (Author), Josée Lajoie (Author)
3.7 out of 5 stars  See all reviews (151 customer reviews)


Available from these sellers.


Textbook Student FREE Two-Day Shipping for Students. Learn more

Formats

Amazon Price New from Used from
Kindle Edition $26.39  
Paperback $40.83  
Paperback, April 2, 1998 --  
There is a newer edition of this item:
C++ Primer (5th Edition) C++ Primer (5th Edition)
$59.99
Available for Pre-order

Book Description

0201824701 978-0201824704 April 2, 1998 3
C++ Primer, Third Edition, combines the practical experience and writing of Stanley Lippman, and the inside knowledge of the ANSI/ISO Standards Draft from Josee Lajoie. Completely rewritten, this tutorial is driven by examples which help the novice C++ programmer solve problems in terms of choice of language features, implementation, and efficiency. Programming aspects of the language are presented in the context of solving a particular problem or programming task. Language rules are given both to clearly introduce the rule and provide a reference to it. The book covers the new C++ Standard Library, including extensive treatment of what was formerly known as the Standard Template Library (STL), as well as the string and complex class types. It also examines the new language features introduced into the International Standard, such as Exception Handling, Run-Time Type Identification, Namespaces, the built-in bool type, and new-style cast-notation.


Editorial Reviews

Amazon.com Review

This new edition of C++ Primer, a favorite choice for a first C++ book, has been greatly improved with the latest and greatest on C++, stressing the built-in language features of the C++ Standard Library. For this new version--weighing in at a massive 1,237 pages--Stanley Lippman, a well-known C++ expert, teams up with Josée Lajoie, who has helped define the C++ international language standard. The new material is excellent for programmers who want to get the most out of new and advanced features in the language.

The authors still introduce the basics of C++, including data types and pointers, but quickly move on to stress how to get the most out of the built-in features of ISO-standard C++. Throughout this book built-in support for the C++ Standard Library, such as container classes like vectors and maps, and other standard features, such as the string class, are integrated into a tried-and- proven basic-language tutorial.

The major new features of C++ (templates, name spaces, and run-time type identification) all get their due. The result is an authoritative guide to basic and advanced C++ in a clear and readable style, with plenty of short, practical examples throughout the text. The book includes exercises--some quite challenging--for every section: a perfect choice both for self-study and the classroom. --Richard Dragan

Review

Read the full review for this book.

During the last fifteen years, the power factor seems to have outperformed the complexity factor, marking the track for massive adoption of C++ in all sorts of serious application realms. Hundreds of books have been published covering every single aspect of the language, including its syntactic and semantic aspects, its effective adoption in small- and large-scale projects, and its most resounding features as well as its most worrying pitfalls. --Davide Marcato, Dr. Dobb's Electronic Review of Computer Books -- Dr. Dobb's Electronic Review of Computer Books


Product Details

  • Paperback: 1264 pages
  • Publisher: Addison-Wesley Professional; 3 edition (April 2, 1998)
  • Language: English
  • ISBN-10: 0201824701
  • ISBN-13: 978-0201824704
  • Product Dimensions: 9.1 x 7.4 x 1.8 inches
  • Shipping Weight: 4 pounds
  • Average Customer Review: 3.7 out of 5 stars  See all reviews (151 customer reviews)
  • Amazon Best Sellers Rank: #726,116 in Books (See Top 100 in Books)

More About the Authors

Discover books, learn about writers, read author blogs, and more.

 

Customer Reviews

151 Reviews
5 star:
 (68)
4 star:
 (32)
3 star:
 (17)
2 star:
 (13)
1 star:
 (21)
 
 
 
 
 
Average Customer Review
3.7 out of 5 stars (151 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

157 of 160 people found the following review helpful:
5.0 out of 5 stars 4th Edition is Much Improved, April 28, 2005
By 
Paul M. Dubuc (Columbus, OH USA) - See all my reviews
(REAL NAME)   
It's too bad that Amazon has listed reviews here which apply to earlier editions of the book. This 4th edition is a very different book than the 3rd or previous editions. (Any review you see here prior to February 2005, when this edition was printed, doesn't apply to this book.) The front cover of this book says that more than 450,000 programmers have learned C++ from previous editions. I wasn't one of them, though I bought and started to read 2 previous editions in the attempt to be. I already new C very well and the approach taken in those editions bogged me down in too much detail that I already knew.

This 4th edition is a tremendous improvement over the others. The material has been completely reorganized and updated and is much more effectively presented. The text is sprinkled with highlighted tips, notes, warnings, and best practices that not only helpful in learning the material but in applying it well. Each chapter is summarized at the end and has a glossary of important terms and concepts. Exercises at the end of each section make this book a good candidate for classroom use as well as individual study. They even knocked 300 pages off the length of the 3rd edition!

If you want to learn C++ thoroughly and well using just one book, this is the book to buy.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


130 of 133 people found the following review helpful:
4.0 out of 5 stars Comprehensive, well written, well presented ... but...., October 14, 2005
By 
Tim Naff "Tim" (Huntsville, AL USA) - See all my reviews
Amazon Verified Purchase(What's this?)
Let me state up-front that this is an indispensable book for me, and, as a reference, or as a source for expanding a basic C++ capability, it's easily worth 5 stars, not 4. In fact, as an intermediate-level C++ user, this is the most indispensable book that I have. I have 15 C++ books on my shelf, and this one (the fourth edition) is the most comprehensive, even surpassing Stroustrup's tome in most areas. (Stroustrup's influence on Primer is pretty obvious in spots.) The book's depth and its style of presentation, however, will mean that it's not the best primer for newcomers, and that's why I only gave it a 4-star rating. Look at the painting metaphor expressed on the front cover of the book. This book is more than a primer: it's a full pallet of colors, and as such is more than a beginner "painter" will be able to put to use quickly. I need to clarify what I'm saying here.

You might ask how a book can be the most comprehensive available without being longer in page count. The answer comes down to style. This book rarely expends space on full-length, executable code examples. The treatment of nine out of ten subjects offers only snippets of code - not complete executable examples. Many books offer examples that take up multiple pages for the code and multiple pages for the line-by-line explanations of the code. This difference in presentation is the single biggest reason why C++ Primer can offer so much more thorough coverage of C++ language features in fewer than 900 pages. The downside is, if you intend to learn C++, you absolutely must experiment with working code - there is no other way. The fact that this book does not offer much complete working code means that you will have to spend more time getting yourself set up to experiment. This will be especially true if you are a beginner, just because it will be harder to get things working.

The conciseness of code examples is matched by conciseness of explanations. In this regard, however, I have found no downside: the vast majority of explanations are extremely clear to the point of elegance. I've found only a few flaws in clarity, which are probably left over from earlier editions.

The tremendous depth of this book will be another weakness for newcomers to C++ who need to get started quickly. In my opinion, you just can't get started quickly when every treatment of every subject has to cover all of the ins and outs of that subject. There are too many subjects and too many ins and outs. If you try to go straight through the book, you'd better be prepared to work lots and lots of problems along the way: it will take so long to get through it that if you don't practice as you go, you may find yourself forgetting almost as fast as you're learning.

The other side of the coin is this: if you really do take this book, work through it from start to finish, and really master the material, you'll have a fantastic knowledge of C++. I seriously doubt that three good college courses in C++ - assuming no prior programming experience - would teach as much. The fact that you'll have to develop your own working code to demonstrate each feature will, like the depth of treatment, make you a better programmer, even though it seriously slows you down in the process.

You can conclude, then that if you are a newcomer to C++, and especially if you are inexperienced with programming in general, this book will be a long, hard climb. I'd be willing to bet that fewer than 5 percent of purchasers of this book start at the beginning and work straight through. Even so, if you are a newcomer taking a C++ programming class or just using another book to get started, it will be valuable for parallel reading and will come in very handy when you want to do a deep dive. Finally, don't forget that if you have a basic grounding in C++ fundamentals and you want to grow from there, this is a dynamite, five-star opportunity.

I feel like I have to elaborate here a bit as well. Time after time after time, when I've wanted a better understanding of a really fine point on the language, I've turned to this book and been rewarded for doing so. Every single subject is explained fully and, in most cases, eloquently. You can learn to do a lot quickly in C++ using other resources, but C++ offers the ability to fine tune and get close to the hardware. This book will make you better understand what the compiler is doing. The authors took the time to make extensive use of cross-references, which are invaluable in a subject this complex. The explanations, bolstered by cross-references, tend to leave me more than satisfied that I've gotten a grip. When I finish a section and have some example code executing, I feel like I have a complete understanding: I rarely find myself asking, "... but what about ...." I could go on and on, but you get the message. (One reason I'm taking the time to write this is that I feel indebted to the authors!)

The book builds up a consistent set of semantics - more so than any other book I've read. One example is their thorough explanation and consistent use of the terms "declare" and "define." Another is example is "argument" and "parameter list." Unambiguous semantics are essential to unambiguous communication, and, as you know, programming is one of the most unforgiving disciplines there is; ambiguity is intolerable. This attention to detail pervades the entire book, beyond just semantics.

Also, like with Stroustrup's book, I don't have to worry about whether the authors got it right or wrong or only half-right. This is an authoritative work: these guys know their subject as well as they know how to communicate it.

I especially like the dark page summaries and glossaries that act as chapter boundaries. I like the highlighted notes, tips, "bewares," and best practices. I like the blocks of text that address "cautions." These features are value-multipliers for me.

I also appreciate that there is absolutely no subconscious assumption that you already know C. That assumption seems to creep into so many other books, even though the authors deny it.

I agree with other reviewers that this edition is a huge improvement over previous editions. (I have the second edition beside me as I write this.) Frankly, I don't like the earlier editions. My guess is that the new authors, who came on board for this edition, should get a lot of credit. (I know an absolutely brilliant guy who has done some real innovation with C++. For example, he wrote a C++ library that allows you to write C++ in Python style, while getting C++ performance. This same guy was so intimidated by an earlier edition of Primer that he put off trying to learn C++ for several years! I'm still trying to convince him to get the fourth edition!)

So the fourth edition is a vast improvement, but, assuming that we don't try to make it all things to all readers and stick with the objective of compact comprehensiveness, how could we improve it further? The code examples could be simpler. I think Schildt is the master of communicating through code examples, just because his examples do the best job of isolating on the subject at hand. C++ is an extremely broad language, and when I read about a concept, I don't want to be expected to know everything, especially code examples, that preceded it in the book. Primer could do a better job - at least for me - in that respect. Examples should not be codependent: each example should lean only on the preceding material as much as is necessary to get the point across. Stated another way, OO programmers are big on encapsulation; OO tutorial writers should use the same rigor in encapsulating modules of tutorial text. All experts agree that the best code is code that is easily readable. In a tutorial, the meaning of the code examples should jump off the page. Primer is not bad in this regard, but it could be better. Some will argue that leaning on previous material reinforces the learning of the material, and they will be right. In my opinion, however, that argument applies mostly to course textbooks where the learning of diverse features can be forced into a tightly channeled sequence. I often use Schildt and Holtzner for reference when I need a quick answer. (As an aside, Stroustrup's book is the worst, for me, in terms of code examples being unnecessarily complex and codependent, even though I consider his book second only to this one as an indispensable reference.)

Bottom line: C++ Primer is an amazing accomplishment. The authors have done the best job to date of sorting out and presenting in lucid fashion a vast and complex network of features. I speak from experience as a technical writer as well as a student of C++. I feel guilty for assigning only four stars, but I'm concerned about the newbie who sees a 5-star rating on a "primer," and rushes to spend his limited budget on this book as a sole reference. C++ Primer is a very wise investment if you are really serious about C++, whether newbie or expert, but most newbies will also need a primary resource that is more beginner-oriented. Other books I recommend, in addition to the ones mentioned previously, include Prata (a good tutorial and a good resource for complete code examples, although there is significant codependence of examples); Lafore; Josuttis' classic STL book (definitely not for beginners); Schildt's STL book, also for its code examples; Keough and Gray (for quick reference only); and Safir and Brown (which does assume that you know C).
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


46 of 47 people found the following review helpful:
5.0 out of 5 stars great book, but should be called C++ primer plus, February 16, 2007
Amazon Verified Purchase(What's this?)
This is a great book for anyone who want to enhance his/her knowledge
on C++, but this is by no means a primer book. If you are new to C++,
read the book "C++ primer plus" first. It is so funny that the book
"C++ primer plus" (which is also a great book) is really an introductory
book. The names of these two books should be swapped because this book
introduces more advanced topics and the topics that an experience programmer should know but a student does not need to. From my teaching experience in a state university, I would suggest students to read C++ books in the following order:

C++ primer Plus
C++ Primer
Thinking in C++ (great book, free on the internet)
The C++ Programming Language (by Stroustrup)

Then you may want to read some books on special topics such as Visual C++, Database, etc.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews











Only search this product's reviews



Inside This Book (learn more)
Browse and search another edition of this book.
Browse Sample Pages:
Front Cover | Table of Contents | First Pages | Index | Surprise Me!
Search Inside This Book:

What Other Items Do Customers Buy After Viewing This Item?


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(1)
(1)

Your tags: Add your first tag
 

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums





Look for Similar Items by Category


Look for Similar Items by Subject