An Annotated Bibliography

CS 509, Advanced Programming II, Spring 2002

This page contains an annotated bibliography of books that may be helpful for people taking advanced programming. Entries followed by a call number can be found in the Guggenheim Library.

Nicolai M. Josuttis, The C++ Standard Library: A Tutorial and Reference, Addison Wesley, 1999.

This book covers all the standard C++ libraries, which includes the STL. It's not as much a tutorial as Musser's book, but it's more compact, which makes it easier to use as a reference. I have a copy of this.

Scott Meyers, Effective STL: 50 Specific Ways to Improve Your Use of the Standard Template Library, Addison Wesley, 2001.

Once you've learned the STL, you need to learn to use it well. This book will help you. I have a copy of this.

Bjarne Stroustrup, The C++ Programming Language, special edition, Addison Wesley, 2000.

Unfortunately, if you're going to be a C++ programmer, you're going to be a language lawyer, and you might as well get the laws from Moses himself. I have a copy of this.

Scott Meyers, Effective C++: 50 Specific Ways to Improve Your Programs and Design, second edition, Addison Wesley, 1998

Scott Meyers, More Effective C++: 35 New Ways to Improve Your Programs and Designs, Addison Wesley, 1996.

You can use Effective C++ in two ways: first, if there's a chapter about some C++ feature, you should think hard about whether or not you really need to use that feature. Second, if you decide you do need to use it, you should read and understand the chapter so you can avoid all the little traps that are waiting for you.

If you can't borrow a copy of More Effective C++, you should wait until the second edition comes out before you buy one.

Andrei Alexandrescu, Modern C++ Design: Generic Programming and Design Patterns Applied, Addison Wesley, 2001.

This is what I call advanced C++ programming.

This page last modified on 18 May 2002.