Angelika Langer - Training & Consulting

 
HOME | SEMINARS | TALKS | ARTICLES | BOOKS | LINKS | IOSTREAMS | GENERICS | ABOUT | NEWSLETTER | CONTACT | SITEMAP
Book Review - The C++ Primer 3rd Ed.

Books  
HOME 
SEMINARS 
TALKS 
ARTICLES 

BOOKS

  OVERVIEW
  REVIEWS

  BIBLIOGRAPHY    
    J2SE
    J2EE
    CORE C++
    STL
    TEMPLATES
    IOSTREAMS
    CONCURRENCY
    I18N
    PATTERNS
    OOA/OOD
    TESTING
    MANAGEMENT
 

LINKS 
IOSTREAMS 
GENERICS 
ABOUT 
NEWSLETTER 
CONTACT 
SITEMAP 
Book Review - The C++ Primer 3rd Ed.
   
  Book Review of the week
 
 
  C++ Primer 
  By Stanley B. Lippman and Josee Lajoie 
  Reading,MA:Addison-Wesley Longman 
  ISBN 0-201-82470-1 
  1237 pages 
 
  Price: $45.95 
  (Reviewed 6/11/98) 
 
Third Edition of Classic Tutorial Covers More Ground 
Bigger and better than ever
 
A lot has changed in the C++ world since the second edition of Stan B. Lippman's C++ Primer was published in 1991. The biggest event that happened in the meantime was the standardization of the C++ programming language. Consequently, it is not surprising that the newly published third edition differs significantly from the second edition. Two obvious changes can be noticed without even opening the book:
     
  • It doubled in size (now: 1,200+ pages). 
  • Josée Lajoie joined Stan Lippman as co-author. Josée was heavily involved with the C++ standardization process: for three years she was vice chair of the C++ standard committee and for four years she lead the core language working group.
The first and second editions of the C++ Primer were recognized as classic C++ textbooks for C++ beginners, easier to understand and written in a more tutorial style than the corresponding editions of Bjarne Stroustroup's The C++ Programming Language . This characterization still holds for the third edition as well. In addition, the third edition of C++ Primer covers all new language features?such as namespaces, RTTI, and new style casts?plus the C++ standard library (except the support for internationalization and the numeric library).

 Another improvement to the third edition is the organization and treatment of advanced features. The new edition contains more extensive descriptions of C++ language rules than its predecessor?for example, the type conversion rules are now covered in depth. To prevent a C++ beginner from getting overwhelmed by details, these sections are indicated by a special marker. This way it's easy to recognize which section can be skipped when the book is read as an introductory textbook.

 Moreover, language concepts are combined with typical idioms that show how these language features can be used most effectively. Also, potential pitfalls are pointed out. An example for a new C++ idiom can be found in chapter 12.3 about Function Objects: It demonstrates how the concept of classes and the ability to overload the function call operator can be combined to implement functions as objects. Differences to functions are discussed: when passed as a parameter, a function object's operator() can be inlined while a function pointer cannot; function objects can have state, functions cannot, etc.

  C++ Primer is an excellent tutorial for software developers who start with the C++ language. This new edition is equally interesting for people who are already familiar with the C++ basics and need information about advanced language features and the changes introduced by the standardization.

 Angelika Langer develops and teaches classes on advanced C++, STL, multithreading, internationalization, and Java. She has served on the ANSI/ISO C++ Committee since 1993. Klaus Kreft is a software architect and consultant with more than a decade of experience in industrial software development. He works for Siemens Business Services in Germany. Langer and Kreft are working on a book about standard C++ iostreams and locales and are columnists for C++ Report

 

 
© Copyright 1995-2003 by Angelika Langer.  All Rights Reserved.    URL: < http://www.AngelikaLanger.com/Articles/Reviews/LippmanPrimer/review.htm  last update: 29 Oct 2003