Alvin said:
I tend not to use the STL. Not that I don't like the STL but for my needs, I
require light weight containers. In the past, the STL had the reputation of
being bloated and slow. I must admit though, I haven't looked into the
recent STL implementation recently.
That's the advanced answer.
The answer for a beginner: The number one resource to optimize is programmer
time. Don't worry about what's slow, because you will never be able to
predict it. Don't indulge in "premature optimization".
To get your project started quickly, use the most widely supported and
standardized things possible. This will boost programmer time, without
researching rare libraries (or writing them).
Only after you profile your code to see where it's slow, and only after
getting a charter from your customer to spend time optimizing, should you
speed a program up. This may or may not involve replacing Standard Library
things with hand-written, faster things.
And in the specific case of the STL container libraries, you have a wide
range of options, including changing compiler settings, adding new
allocators, changing the template parameters, and changing the container
algorithms, before abandoning STL entirely.