REVIEW - C++ Primer

Title:

C++ Primer

Author:

Stanley B. Lippman, Josée Lajoie, Barbara E. Moo

ISBN:

0201721481

Publisher:

Addison-Wesley (2005)

Pages:

912pp

Reviewer:

Nicola Musatti

Reviewed:

February 2006

Rating:

5 out of 5

This is the fourth edition of one of the oldest and most popular introductory books on C++. Since the last edition came out in 1998 C++ as a language hasn't changed much; what has changed is the way the language is used, even at the beginner to intermediate level. The increasing acceptance of the standard library has modified the role of features such as pointers and arrays from fundamental to advanced. This is reflected in the structure of the book, where std::string, std::vector and std::bitset are introduced before null-terminated strings, arrays, pointers and bitfields. These standard library classes are also preferred to their traditional counterparts in most examples, even the very first ones.

The book is opened by an introductory chapter and is then divided in five parts: The Basics, which describes fundamental types and constructs, as well as a few items from the standard library; Containers and Algorithms; Classes and Data Abstraction; Object-Oriented and Generic Programming and Advanced Topics, which presents exception handling, namespaces and other advanced constructs. These are followed by an appendix on the standard library. Each chapter is opened by a short introduction and is closed by a summary and a very convenient glossary of the terms defined within the chapter.

The text is complemented by boxes that contain notes, tips and cautions and by a wealth of exercises for which, however, solutions aren't provided. Material for a companion tome, perhaps.

I found "C++ Primer" well written and easy to understand. It may not be exactly a step-bystep, hand-holding guide but it is certainly suited for people with some programming experience in other languages. I'm convinced that it would also be of use to many C++ programmers, both as a reference and as a means to brush up their knowledge of the language.

I didn't find any major defect in this book. There are a few issues on which I disagree with the authors' point of view, but I have to say that I always found theirs reasonable. This being a first printing it contains a few typographical errors here and there, though not as many as in other recent technical books.


Book cover image courtesy of Open Library.