Previously, I used to use MFC collection classes such CArray and CMap. After a while I switched to STL containers and have been using them for a while.
Next to the mentioned aspects: well-supported, standard available, optimized for performance, designed for use with the algorithms, I might add one more aspect: type-safety, and loads of compile-time checks. You can't even imagine drawing a double out of a std::set.