I started with Visual C++ 1.0. There were no templates.
Visual C++ 2.0 had templates.
There was by Visual C++ 3.0. They went to 4.0 to sync the MFC (Microsoft Foundation Classes) versions.
IIRC, you could use a bit of STL with 4.0
Visual C++ 5.0 was mainly optimizer differences.
Visual C++ 6.0 was actually pretty good. However it lacked partial template specialization. I was a Boost author at the time and lots of Boost code had specific workarounds for Visual C++ 6.
Visual C++ 2002 also had no partial template specialization.
Visual C++ 2003 was the first version with partial template specialization and that could compile all of Boost.
Visual C++ 2005 and 2008 did not have much changes.
Visual C++ 2010 tried to get back to 6 in the IDE (there was a deliberate marketing as such). It also had some C++11 features. But no variadic templates.
Visual C++ 2012 had no variadic templates.
Visual C++ 2013 was the first with variadic templates.
Nowadays, Visual C++’is doing much better tracking the C++ standard and often has compiler and library features before clang and GCC.
But with a focus more on C++ features.
I started with Visual C++ 1.0. There were no templates.
Visual C++ 2.0 had templates.
There was by Visual C++ 3.0. They went to 4.0 to sync the MFC (Microsoft Foundation Classes) versions.
IIRC, you could use a bit of STL with 4.0
Visual C++ 5.0 was mainly optimizer differences.
Visual C++ 6.0 was actually pretty good. However it lacked partial template specialization. I was a Boost author at the time and lots of Boost code had specific workarounds for Visual C++ 6.
Visual C++ 2002 also had no partial template specialization.
Visual C++ 2003 was the first version with partial template specialization and that could compile all of Boost.
Visual C++ 2005 and 2008 did not have much changes.
Visual C++ 2010 tried to get back to 6 in the IDE (there was a deliberate marketing as such). It also had some C++11 features. But no variadic templates.
Visual C++ 2012 had no variadic templates.
Visual C++ 2013 was the first with variadic templates.
Nowadays, Visual C++’is doing much better tracking the C++ standard and often has compiler and library features before clang and GCC.