Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition)

Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition)
by Scott Meyers

Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition)
List Price: $49.99
Our Price: $35.15
You Save: $14.84 (30%)
Availability: Usually ships in 1-2 business days
Buy Used: from $26.56 (click here)
Category: Book
See more book details and other editions


(Click here)
Buy this book at online book store in your country
Canada | UK | Germany | France

Book Summary Information

Author: Scott Meyers
Edition: Paperback
Audio: English (Unknown); English (Original Language); English (Published)
Published: 2005-05-22
ISBN: 0321334876
Number of pages: 320
Publisher: Addison-Wesley Professional
Accessories:

Book Reviews of Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition)

Book Review: Simply the best "second book" on C++
Summary: 5 Stars

Along with classics such as Kernighan & Ritchie's "The C programming language" and Steve McConnell's "Code Complete", "Effective C++" by Scott Meyers belongs to a very small list of indispensable books on programming. Its main difference from K&R and Code Complete is that "Effective C++" assumes you have already read another book on the topic, and you are now trying to make effective use of the powerful beast that is C++.

The Good: Meyers has divided his material into 55 Items, which he then grouped into 9 Chapters focusing on broad topics such as resource management, object-oriented design, and generic programming. Each Item is easy to read, to the point, and immensely valuable to every C++ programmer. Some of the issues discussed are quite counterintuitive; here are three of my favorite examples: a) it is possible to have a pure virtual function for which a definition must be provided (Item 7), b) a single object might have more than one address (Item 27), and c) a freestanding empty object is usually as big as a char and if contained within another object might cause the latter to gain the size of an int (Item 39). In such cases, as well as when covering less obscure topics (e.g. C++ generally doesn't look in templatized base classes for inherited names, Item 43), Meyers offers solid and carefully reasoned advice. Each item is aptly titled and ends with a brief list of "Things to remember"; these lists are very useful when re-reading this volume. The third edition of "Effective C++" was published in 2005, so it is not only compliant with standard (1998/2003) C++, but it has also incorporated current best practices that have emerged since the standard was established. Finally, the book also includes discussions of concepts relevant to the soon-to-be-published new standard (still known as C++0x), through Technical Report 1 (especially on tr1::shared_ptr).

The Bad: since this book was not written in the future [sic], it does not contain material on aspects of C++0x that had not been finalized in 2005. It will probably take Meyers a few more years to determine which aspects of the new standard are sufficiently tricky as to be included in the fourth edition of his book. Thus, even though this is among the most up-to-date C++ books on the market, it does not (since it could not) contain too much on C++0x. Apart from this, the main (to be honest, the only) complaint I have is that this book uses different conventions for pointers when they are in a function's return type (T* func()) and in a variable definition (T *var) -- unless we're dealing with pointer-to-char in which case all bets are off. Following from this is another difference, that between pointer parameters (func(T *param)) and reference parameters (func(T& param)). The fact that I'm reduced to mentioning these conventions in a paragraph allegedly dealing with "The Bad" aspects of the book shows how impressive and essentially flawless this volume is.

There are those (few, unhappy few) who say that a good reference like Stroustrup's "The C++ Programming Language" or Lippman/Lajoie/Moo's "C++ Primer" obviates the need for books like those in the "Effective C++" series. Such criticisms miss the point: 1,000-page volumes are necessary, but Meyers's format is considerably more pedagogical and therefore more... effective.

In some ways this book is well complemented by Stephen Dewhurst's "C++ Common Knowledge" (especially when it comes to template programming) and by Meyers's other works ("More Effective C++" and "Effective STL"), but if you can afford to buy only one of these volumes you should get "Effective C++". I look forward to reading the fourth edition.

Alexandros Gezerlis

Summary of Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition)

?Every C++ professional needs a copy of Effective C++. It is an absolute must-read for anyone thinking of doing serious C++ development. If you?ve never read Effective C++ and you think you know everything about C++, think again.?
? Steve Schirripa, Software Engineer, Google
?C++ and the C++ community have grown up in the last fifteen years, and the third edition of Effective C++ reflects this. The clear and precise style of the book is evidence of Scott?s deep insight and distinctive ability to impart knowledge.?
? Gerhard Kreuzer, Research and Development Engineer, Siemens AG

The first two editions of Effective C++ were embraced by hundreds of thousands of programmers worldwide. The reason is clear: Scott Meyers? practical approach to C++ describes the rules of thumb used by the experts ? the things they almost always do or almost always avoid doing ? to produce clear, correct, efficient code.

The book is organized around 55 specific guidelines, each of which describes a way to write better C++. Each is backed by concrete examples. For this third edition, more than half the content is new, including added chapters on managing resources and using templates. Topics from the second edition have been extensively revised to reflect modern design considerations, including exceptions, design patterns, and multithreading.

Important features of Effective C++ include:

  • Expert guidance on the design of effective classes, functions, templates, and inheritance hierarchies.
  • Applications of new ?TR1? standard library functionality, along with comparisons to existing standard library components.
  • Insights into differences between C++ and other languages (e.g., Java, C#, C) that help developers from those languages assimilate ?the C++ way? of doing things.


C & C++ Windows Programming Books

Book Subjects
Most talked about in C & C++ Windows Programming Books
Turbo C++: An Introduction to Computing, 2 volume set ImageTurbo C++: An Introduction to Computing, 2 volume set
by Joel Adams, Sanford Leestma, Larry Nyhoff
Prentice Hall; Published: 1995-12-13; Textbook Binding; Book
Best price: $106.00
C How to Program (5th Edition) ImageC How to Program (5th Edition)
by Paul J. Deitel
Prentice Hall; Published: 2006-09-04; Paperback; Book
Best price: $48.00
Price in other shops: $123.00
Introduction to C++ ImageIntroduction to C++
by Delores M Etter, Jeanine A Ingber
Prentice Hall; Published: 2006-05-28; Paperback; Book
C++/C# Programmer's Guide for Windows 2000 ImageC++/ C# Programmer's Guide for Windows 2000
by Ronald D. Reeves
Prentice Hall; Published: 2001-08-27; Paperback; Book
Best price: $1.99
Price in other shops: $49.99
Introduction to MFC Programming with Visual C++ ImageIntroduction to MFC Programming with Visual C++
by Richard M. Jones
Prentice Hall; Published: 2000-01-01; Paperback; Book
Best price: $19.99
Price in other shops: $69.99
Virtual Reality Excursions: With Programs in C ImageVirtual Reality Excursions: With Programs in C
by Christopher D. Watkins, Stephen R. Marenka
Morgan Kaufmann Pub; Published: 1994-02; Hardcover; Book
Best price: $38.00
Price in other shops: $39.95
Programming Primer for the Macintosh/Book and Disk ImageProgramming Primer for the Macintosh/ Book and Disk
by John C. May, Judy B. Whittle
Morgan Kaufmann Pub; Published: 1994-10; Paperback; Book
Best price: $119.25
C++ from the Ground Up ImageC++ from the Ground Up
by Herbert Schildt
Mcgraw-Hill Osborne Media; Published: 1998-01-01; Paperback; Book
Best price: $4.99
Price in other shops: $34.99
Absolute C++ (2nd Edition) ImageAbsolute C++ (2nd Edition)
by Walter Savitch
Addison Wesley; Published: 2005-02-21; Paperback; Book
Best price: $28.36
Price in other shops: $107.40
C++ Primer (2nd Edition) ImageC++ Primer (2nd Edition)
by Stanley B. Lippman
Addison-Wesley Pub (Sd); Published: 1991-07-16; Paperback; Book
Best price: $4.60
Price in other shops: $42.95
Similar Books and other products
C++ Programming Language, The (3rd Edition) ImageC++ Programming Language, The (3rd Edition)
by Bjarne Stroustrup
Addison-Wesley Professional; Published: 1997-06-30; Paperback; Book
Best price: $40.44
Price in other shops: $79.99
Modern C++ Design: Generic Programming and Design Patterns Applied ImageModern C++ Design: Generic Programming and Design Patterns Applied
by Andrei Alexandrescu
Addison-Wesley Professional; Published: 2001-02-23; Paperback; Book
Best price: $37.67
Price in other shops: $59.99
Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions ImageExceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions
by Herb Sutter
Addison-Wesley Professional; Published: 1999-11-28; Paperback; Book
Best price: $30.00
Price in other shops: $49.99
C++ Coding Standards: 101 Rules, Guidelines, and Best Practices ImageC++ Coding Standards: 101 Rules, Guidelines, and Best Practices
by Herb Sutter, Andrei Alexandrescu
Addison-Wesley Professional; Published: 2004-11-04; Paperback; Book
Best price: $30.00
Price in other shops: $49.99
Design Patterns: Elements of Reusable Object-Oriented Software ImageDesign Patterns: Elements of Reusable Object-Oriented Software
by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
Addison-Wesley Professional; Published: 1994-11-10; Hardcover; Book
Best price: $35.45
Price in other shops: $59.99
Effective STL: 50 Specific Ways to Improve Your Use of the Standard Template Library ImageEffective STL: 50 Specific Ways to Improve Your Use of the Standard Template Library
by Scott Meyers
Addison-Wesley Professional; Published: 2001-06-16; Paperback; Book
Best price: $31.30
Price in other shops: $49.99
More Effective C++: 35 New Ways to Improve Your Programs and Designs ImageMore Effective C++: 35 New Ways to Improve Your Programs and Designs
by Scott Meyers
Addison-Wesley Professional; Published: 1996-01-08; Paperback; Book
Best price: $28.75
Price in other shops: $49.99
The C++ Standard Library: A Tutorial and Reference ImageThe C++ Standard Library: A Tutorial and Reference
by Nicolai M. Josuttis
Addison-Wesley Professional; Published: 1999-08-22; Hardcover; Book
Best price: $45.00
Price in other shops: $79.99
The C++ Programming Language: Special Edition ImageThe C++ Programming Language: Special Edition
by Bjarne Stroustrup
Addison-Wesley Professional; Published: 2000-02-11; Hardcover; Book
Best price: $54.77
Price in other shops: $89.99
Accelerated C++: Practical Programming by Example ImageAccelerated C++: Practical Programming by Example
by Andrew Koenig, Barbara E. Moo
Addison-Wesley Professional; Published: 2000-08-24; Paperback; Book
Best price: $26.99
Price in other shops: $49.99
Book store. Illustrated catalog of books on different categories