The Meyers Trio

From StoneHome

The first two books in the Meyers Trio may alternately be purchased together on CD, heavily cross-referenced with a portable search engine and some extra material.

0201924889.01._SCTZZZZZZZ_.jpg
  • Effective C++: 50 Specific Ways to Improve Your Programs and Design Buy new or buy used

This is always the first book I recommend to an aspiring C++ programmer, whether they have experience in other languages or not. Though it's certainly not a primer, nor even a tutorial, Effective C++ and its two counterparts is in my opinion the best way for a new C++ programmer to get their land legs, to avoid many typical failures in implementation, and to avoid many design problems. This book discusses many both subtle and not-so-subtle issues in C++, frequently as surround inheritance, polymorphism, appropriate class behavior, and so on. This book clears up the proper way to return values from operators, establishes firmly the "good enough for the ints" viewpoint, and can save a novice agonizing over well understood difficulties in immature approaches to code. This book is a prerequisite to almost every advanced C++ book, as without its admonishments most programmers simply cannot implement the complex systems described in other books. All three books of the Meyers Trio are near-critical reads for anyone which wants to take C++ at all seriously. Perhaps more important is the fashion in which Scott Meyers writes: his examples are engaging, his explanations easily understood, and his jokes are actually funny, putting him immediately a head and shoulders' height above other authors in simple readability; even having gone through his text as often as I have (and I'm heavily reliant on this work,) I still find things to laugh at from time to time, and frequently find myself reading things I wasn't looking up just because they're a joy to read. There are almost no books I believe in as strongly as these - contenders only in Design Patterns, Knuth and The Mythical Man Month, so far.

020163371X.01._SCTZZZZZZZ_.jpg
  • More Effective C++: 35 New Ways to Improve Your Programs and Designs Buy new or buy used

The second book of the series is no less important than the first, though it's a bit shorter. The topics convered are slightly more difficult but no less generic than those in the first book, and are still written in the engaging fashion one comes to love in Meyers' other books. Covered here are topics as diverse as reasons why certain operators should never be overloaded, reference counting, reasons to avoid implicit conversions, multiple-class virtualism, amortization, the real cost of exceptions, and so forth. Effective C Plus Plus is required reading to get C++ correct; this is required reading to do C++ well.

0201749629.01._SCTZZZZZZZ_.jpg
  • Effective STL: 50 Specific Ways to Improve Your Use of the Standard Template Library Buy new or buy used

Probably the best of the Meyers Trio, Effective STL is one of the books which can quickly help a programmer acclimate to the relatively specific needs of a proper use of the STL. This book covers topics such as appropriate container and algorithm selection, function binding, the folly of attempting to write container independant code, and so forth. This book quickly disbuses someone new to the STL of many myths surrounding its components, as well as many magic bullets which dissolve under scrutiny. Given my strong belief that the STL is the most important part of C++, it is my opinion that this book can singlehandedly accelerate a C++ programmer through a year of trial and error in two or three readings.