The following C++ features are available in Visual Studio. Unless stated otherwise, all features are available in all editions: Visual Studio Community, Visual Studio Professional, and Visual Studio Enterprise. Some features require specific workloads or optional components, which you can install with the Visual Studio Installer.
The following tables show Visual C++ features that are available in Visual Studio 2017. An X in a cell indicates that the feature is available; an empty cell indicates that the feature is not available. Notes in parentheses indicate that a feature is available, but restricted.
Platforms
Windows Desktop
Universal Windows Platform ((tablet, PC, Xbox, IoT, and HoloLens))
Linux
Android
iOS
Platform
Visual Studio Express for Windows 10
Visual Studio Express for Windows Desktop
Visual Studio Community/Professional
Visual Studio Enterprise
Windows Desktop
X
X
X
Universal Windows Platform ((phone, tablet, PC, Xbox, IoT, and HoloLens))
X
X
X
Linux
X
X
Microsoft Store 8.1
X
X
Windows Phone 8.0
X
X
Android
X
X
iOS
X
X
Compilers
MSVC 32-bit compiler for x86, x64, ARM, and ARM64
MSVC 64-bit compiler for x86, x64, ARM, and ARM64
GCC cross-compiler for ARM
Clang/LLVM
On Windows, Clang/LLVM 12.0, targeting x86 or x64 (CMake support only).
On Linux, any Clang/LLVM installation supported by the distro.
Compiler
Visual Studio Express for Windows
Visual Studio Express for Windows Desktop
Visual Studio Professional / Community
Visual Studio Enterprise
MSVC 32-bit X86 compiler
X
X
X
X
x86_arm cross-compiler
X
X
X
MSVC 64-bit x64 compiler
X
X
x86_x64 cross-compiler
X
X
X
X
C++ Workloads
Visual Studio includes the following workloads for C++ development. You can install any or all of these, along with other workloads such as .NET Desktop Development, Python Development, Azure Development, Visual Studio Extension Development, and others.
Desktop development with C++
Included:
C++ core desktop features
Optional Components:
MSVC v143 - VS 2022 C++ x64/x86 build tools (latest)
Windows 10 SDK (latest for this Visual Studio version)
Just-In-Time debugger
C++ profiling tools
C++ CMake tools for Windows
C++ ATL for v143 build tools (x86 & x64)
Test Adapter for Boost.Test
Test Adapter for Google Test
Live Share
IntelliCode
C++ AddressSanitizer
IntelliTrace (Enterprise only)
MSVC v143 - VS 2022 C++ ARM64 build tools (latest)
C++ MFC for latest v143 build tools (x86 & x64)
C++/CLI support for v143 build tools (latest)
C++ Modules for v143 build tools (x64/x86 – experimental)
C++ Clang tools for Windows (12.0.0 - x64/x86)
JavaScript diagnostics
IncrediBuild - Build Acceleration
Windows 11 SDK
Windows 10 SDK (other versions)
MSVC v142 - VS 2019 C++ x64/x86 build tools (v14.29)
MSVC v141 - VS 2017 C++ x64/x86 build tools (v14.16)
MSVC v140 - VS 2015 C++ build tools (v14.00)
MSVC v142 - VS 2019 C++ x64/x86 build tools (latest)
Windows 10 SDK (latest for this Visual Studio version)
Just-In-Time debugger
C++ profiling tools
C++ CMake tools for Windows
C++ ATL for v142 build tools (x86 & x64)
Test Adapter for Boost.Test
Test Adapter for Google Test
Live Share
IntelliCode
C++ AddressSanitizer
IntelliTrace (Enterprise only)
MSVC v142 - VS 2019 C++ ARM64 build tools (latest)
C++ MFC for latest v142 build tools (x86 & x64)
C++/CLI support for v142 build tools (latest)
C++ Modules for v142 build tools (x64/x86 – experimental)
C++ Clang tools for Windows
JavaScript diagnostics
IncrediBuild - Build Acceleration
Windows 11 SDK
Windows 10 SDK (other versions)
MSVC v141 - VS 2017 C++ x64/x86 build tools (v14.16)
MSVC v140 - VS 2015 C++ build tools (v14.00)
Linux development with C++
Included:
C++ core features
C++ for Linux Development
Optional Components:
C++ CMake tools for Linux
IntelliCode
Embedded and IoT development tools
Universal Windows Platform development
Included:
Blend for Visual Studio
.NET Native and .NET Standard
NuGet package manager
Universal Windows Platform tools
Windows 10 SDK (latest for this Visual Studio version)
Optional Components:
IntelliCode
IntelliTrace (Enterprise only)
USB Device Connectivity
C++ (v143) Universal Windows Platform tools
C++ (v142) Universal Windows Platform tools
C++ (v141) Universal Windows Platform tools
Graphics debugger and GPU profiler for DirectX
Windows 11 SDK
Windows 10 SDK (other versions)
Architecture and analysis tools
IntelliCode
IntelliTrace (Enterprise only)
USB Device Connectivity
C++ (v142) Universal Windows Platform tools
C++ (v141) Universal Windows Platform tools
Graphics debugger and GPU profiler for DirectX
Windows 11 SDK
Windows 10 SDK (other versions)
Architecture and analysis tools
C++ Game Development
Included:
C++ core features
Windows Universal C Runtime
C++ 2019 Redistributable Update
MSVC v143 - VS 2022 C++ x64/x86 build tools (latest)
Optional Components:
C++ profiling tools
C++ AddressSanitizer
Windows 10 SDK (latest for this Visual Studio version)
IntelliCode
IntelliTrace (Enterprise only)
Windows 11 SDK
Windows 10 SDK (other versions)
IncrediBuild - Build Acceleration
Cocos
Unreal Engine installer
Android IDE support for Unreal engine
C++ core features
Windows Universal C Runtime
C++ 2019 Redistributable Update
MSVC v142 - VS 2019 C++ x64/x86 build tools (latest)
Optional Components:
C++ profiling tools
Windows 10 SDK (latest for this Visual Studio version)
IntelliCode
IntelliTrace (Enterprise only)
Windows 11 SDK
Windows 10 SDK (other versions)
IncrediBuild - Build Acceleration
Cocos
Unreal Engine installer
Android IDE support for Unreal engine
Mobile development with C++
Included:
C++ core features
Android SDK setup (API level 25) (local install for Mobile development with C++)
Start testing your C# apps by using the testing tools in Visual Studio. Learn to write tests, use Test Explorer, create test suites, and apply the red, green, refactor pattern to write code.