You may have a version of STL bundled with a recent version of your compiler.
Containers are such things as expandable arrays, called vectors, lists, and sets.
Lists are necessarily doubly linked, but very little is specified about the actual implementations. Iterators are the interface between the containers and the algorithms that manipulate them. Function objects are used to tailor some algorithms to special needs. This actually includes ordinary functions, but also objects whose classes define this operator. It acts just like a pointer.