Since VS 2015 Update 3, the C++ standard targeted by the compiler can be detected through _MSVC_LANG. This macro is like __cplusplus, but reflects the actual standard understood by the compiler, unlike __cplusplus which by default is left to an ancient value for compatibility. Closes #22099.