Using the STL: The C++ Standard Template Library - Robert Robson