问题
In earlier versions of Visual Studio, there was a predefinied macro "_CPPLIB_VER" which reported the version of the Dinkumware STL Library shipped with this version of VS. As of 2012, I am unable to find or use this macro - it is undefinied and I am unable to find any information on this matter online.
Is the Dinkumware STL Lib no longer used in VS2012? Was the macro renamed?
Windows 7 x64 Microsoft Visual Studio 2012 Professional
回答1:
Usually the definition of _CPPLIB_VER can be found in a header file named yvals.h somewhere under your VS installation folder. For Visual Studio 2010 it's in VC\include.
Be careful because _CPPLIB_VER is no longer an official predefined macro since Visual Studio 2008.
The "Change History" section of Predefined Macros (Visual Studio 2008) on MSDN says:
Added Visual Studio 2008 values for
_ATL_VER,_MSC_VER,_MFC_VER; removed_CPPLIB_VER; updated__COUNTER__,_DEBUG,_DLL,_MT,__FUNCDNAME__,__FUNCSIG__,__FUNCTION__,__FILE__. Cleaned up topic.
And the macro was one of the "Microsoft-Specific Predefined Macros" for VS 2005. See Predefined Macros (Visual Studio 2005):
_CPPLIB_VER
Defined if you include any of the C++ Standard Library headers; reports which version of the Dinkumware header files are present.
来源:https://stackoverflow.com/questions/12286286/which-version-of-the-dinkumware-stl-lib-ships-with-visual-studio-2012