Can anyone tell me what compiler is built-in to Visual Studio 2015 for C++ projects? I tried it and tried older version compilers and it's giving me other compiling results. Is it GNU C++ version 4.8.2 or a newer version?
相关问题
- Sorting 3 numbers without branching [closed]
- How to compile C++ code in GDB?
- Why does const allow implicit conversion of refere
- How to know full paths to DLL's from .csproj f
- Importing NuGet references through a local project
相关文章
- How to show location of errors, references to memb
- Class layout in C++: Why are members sometimes ord
- How to mock methods return object with deleted cop
- Which is the best way to multiply a large and spar
- How to track MongoDB requests from a console appli
- C++ default constructor does not initialize pointe
- Selecting only the first few characters in a strin
- What exactly do pointers store? (C++)
Basically, Visual Studio 2015 supports compiler Visual C++ 14.0. But for more detail, you can track what features of C++ 14.0 has already been implemented here.
Also, I like Dorin's answer, he pointed out a way to check compiler version with code.
They have their own compiler that goes by Visual C++ _____
Here is a mapping of the IDE version to the compiler version. They release a major compiler version with each major IDE version.
Visual Studio 2005 - Visual C++ 8.0
Visual Studio 2008 - Visual C++ 9.0
Visual Studio 2010 - Visual C++ 10.0
Visual Studio 2012 - Visual C++ 11.0
Visual Studio 2013 - Visual C++ 12.0
Visual Studio 2015 - Visual C++ 14.0
Visual Studio 2017 - Visual C++ 14.1
So to explicitly answer your question, Visual Studio 2015 uses the compiler Visual C++ 14.0
The C/C++ compiler in Visual Studio is and always has been Microsoft C++ Compiler, built by Microsoft (not based on anything else.)
Right now, this is how the compiler names itself:
In VS2015, the compiler can target x86 and x64, as well as ARM. It supports almost all of C++11 and C99, and a large part of C++14, plus a little bit of the C++17 (or whenever) draft.
You can get some useful information running this:
Common MSVC versions:
MSVC++ 9.0 _MSC_VER == 1500 (Visual Studio 2008)
MSVC++ 10.0 _MSC_VER == 1600 (Visual Studio 2010)
MSVC++ 11.0 _MSC_VER == 1700 (Visual Studio 2012)
MSVC++ 12.0 _MSC_VER == 1800 (Visual Studio 2013)
MSVC++ 14.0 _MSC_VER == 1900 (Visual Studio 2015)
MSVC++ 14.1 _MSC_VER == 1910 (Visual Studio 2017)
Macros interpretation:
_MSVC_LANG : Defined as an integer literal that specifies the C++ language standard targeted by the compiler
_MSC_VER : contains the major and minor version numbers as an integer (e.g. "1500" is version 15.00)
_MSC_FULL_VER : contains the major version, minor version, and build numbers as an integer (e.g. "150020706" is version 15.00.20706)
_MSC_BUILD : contains the revision number after the major version, minor version, and build numbers (e.g. "1" is revision 1, such as for 15.00.20706.01)