A very nice STL related article can be found on this page: Effective STL by David Harvey.
The beauty of this text is the amount of different examples that illustrate possible solutions for a given problem.
What can be a routine task for a C programmer becomes an interesting challenge for a C++ amateur.
A simple task of outputting unique strings in a sorted orders can have several STL implementations.
The least effective solution can be made using vector<string> container and unique() algorithm:
vector<string>::iterator e = unique(v.begin(), v.end());
Another more successful example shows how to use set<string> container to keep only unique value.
Two most effective examples use stream adapters and transform algorithm to achieve the best result.
What is hard for a C programmer is to get accustomed to the fact that every problem can be solved using STL in different ways.
And usually finding the best solution among the others is another task that requires some additional knowledge of the library.