Two men by the names of P.J. Plauger and Pete Becker have developed the STL implementation for the Visual C++ compilers. They work for DinkumWare (
www.dinkumware.com).
For other compilers, there is the STLPort implementation (
www.stlport.org) used by the Borland (now Inprise) compilers. I believe that g++ maintains their own version, Sun compilers have their own, etc.
What matters is not what the internals of the STL are. What matters is whether the library
1) Has the same
public interface as described by the ANSI standard, and
2) If the library behaves the same way when given data to work with (in other words, vector::at() throws an exception on an out-of-bounds index, push_back() actually adds an item to the back of a vector, list, or deque, etc.) and
3) The operations perform algorithmically in the within the timing constraints as specified by the standard. In other words, std::find() should be linear time complexity, not quadratic, std::sort() should perform in logarithmic time (i.e. you can't implement std::sort using a bubble sort), etc.
Regards,
Paul McKenzie