Introduction
The C++ Collection Framework is a C++ implementation of a generic set of containers, similar to the Java Collection Framework. Before you run off screaming that you don't like Java, the Java Collection Framework has some nice features; in particular, you can refer to most of the collection classes as a base class and thus change your instance of a collection type at runtime. This kind of programming is just good object-oriented programming practice.
Unfortunately we can't do this with the STL because the STL has efficiency as its main goal. However, I designed this template-based collection framework with efficiency as a goal also and so you can turn off all of the safety mechanisms by template parameters to boost the speed of your collections. So, while I have to call more virtual functions than the STL, I think the tradeoff in code flexibility is important.