Strumenti e funzionalità C++ nelle versioni di Visual Studio

In Visual Studio sono disponibili le funzionalità C++ seguenti. Se non diversamente specificato, tutte le funzionalità sono disponibili in tutte le edizioni: Visual Studio Community, Visual Studio Professional e Visual Studio Enterprise. Alcune funzionalità richiedono carichi di lavoro specifici o componenti facoltativi che è possibile installare tramite il programma di installazione di Visual Studio.

Le tabelle seguenti illustrano le funzionalità di Visual C++ disponibili in Visual Studio 2017. Una X in una cella indica che la funzionalità è disponibile. Una cella vuota indica che la funzionalità non è disponibile. Le note tra parentesi indicano che una funzionalità è disponibile, ma limitata.

Piattaforme

  • Windows Desktop
  • Piattaforma UWP (Universal Windows Platform) (tablet, PC, Xbox, IoT e HoloLens)
  • Linux
  • Android
  • iOS
Piattaforma Visual Studio Express per Windows 10 Visual Studio Express per Windows Desktop Visual Studio Community/Professional Visual Studio Enterprise
Windows Desktop X X X
Piattaforma UWP (Universal Windows Platform) (telefono, tablet, PC, Xbox, IoT e 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

Compilatori

  • Compilatore a 32 bit MSVC per x86, x64, ARM e ARM64
  • Compilatore a 64 bit MSVC per x86, x64, ARM e ARM64
  • Compilatore incrociato GCC per ARM
  • Clang/LLVM
    • In Windows, Clang/LLVM 12.0, destinato a x86 o x64 (solo supporto CMake).
    • In Linux la distribuzione supporta qualsiasi installazione Clang/LLVM.
Compilatore Visual Studio Express per Windows Visual Studio Express per Windows Desktop Visual Studio Professional/Community Visual Studio Enterprise
Compilatore MSVC X86 a 32 bit X X X X
x86_arm compilatore incrociato X X X
Compilatore MSVC x64 a 64 bit X X
x86_x64 tra compilatori X X X X

Carichi di lavoro C++

Visual Studio include i carichi di lavoro seguenti per lo sviluppo con C++. È possibile installarli tutti o solo alcuni, insieme ad altri carichi di lavoro quali ad esempio Sviluppo per desktop .NET, Sviluppo Python, Sviluppo di Azure, Sviluppo di estensioni di Visual Studio e altri.

Sviluppo per desktop con C++

Inclusi:

  • Funzionalità desktop di base di C++

Componenti facoltativi:

  • MSVC v143 - Visual Studio 2022 C++ x64/x86 build tools (versione più recente)
  • Windows 10 SDK (versione più recente per questa versione di Visual Studio)
  • Debugger JIT
  • Strumenti di profilatura C++
  • Strumenti CMake C++ per Windows
  • ATL C++ per gli strumenti di compilazione v143 (x86 & x64)
  • Adattatore di test per Boost.Test
  • Test Adapter for Google Test
  • Live Share
  • IntelliCode
  • C++ AddressSanitizer
  • IntelliTrace (solo Enterprise)
  • MSVC v143 - VISUAL STUDIO 2022 C++ C++ ARM64 Build Tools (versione più recente)
  • MFC C++ per gli strumenti di compilazione v143 più recenti (x86 & x64)
  • Supporto di C++/CLI per gli strumenti di compilazione v143 (versione più recente)
  • Moduli C++ per gli strumenti di compilazione v143 (x64/x86 - sperimentale)
  • Strumenti Clang C++ per Windows (12.0.0 - x64/x86)
  • Diagnostica di JavaScript
  • IncrediBuild - Accelerazione della compilazione
  • Windows 11 SDK
  • Windows 10 SDK (altre versioni)
  • MSVC v142 - VS 2019 C++ x64/x86 build tools (v14.29)
  • MSVC v141 - VS 2017 C++ Build Tools x64/x86 (v14.16)
  • MSVC v140 - VS 2015 C++ Build Tools (v14.00)
  • MSVC v142 - Visual Studio 2019 C++ x64/x86 build tools (versione più recente)
  • Windows 10 SDK (versione più recente per questa versione di Visual Studio)
  • Debugger JIT
  • Strumenti di profilatura C++
  • Strumenti CMake C++ per Windows
  • ATL C++ per Build Tools v142 (x86 e x64)
  • Adattatore di test per Boost.Test
  • Test Adapter for Google Test
  • Live Share
  • IntelliCode
  • C++ AddressSanitizer
  • IntelliTrace (solo Enterprise)
  • MSVC v142 - Visual Studio 2019 C++ ARM64 Build Tools (versione più recente)
  • MFC C++ per gli strumenti di compilazione v142 più recenti (x86 & x64)
  • Supporto di C++/CLI per gli strumenti di compilazione v142 (versione più recente)
  • Moduli C++ per Build Tools v142 (x64/x86 - sperimentale)
  • Strumenti Clang C++ per Windows
  • Diagnostica di JavaScript
  • IncrediBuild - Accelerazione della compilazione
  • Windows 11 SDK
  • Windows 10 SDK (altre versioni)
  • MSVC v141 - VS 2017 C++ Build Tools x64/x86 (v14.16)
  • MSVC v140 - VS 2015 C++ Build Tools (v14.00)

Sviluppo di applicazioni Linux con C++

Inclusi:

  • Funzionalità di base per C++
  • C++ per lo sviluppo di applicazioni Linux

Componenti facoltativi:

  • Strumenti CMake C++ per Linux
  • IntelliCode
  • Strumenti di sviluppo Embedded e IoT

Sviluppo per la piattaforma UWP

Inclusi:

  • Blend per Visual Studio
  • .NET Native e .NET Standard
  • Gestione pacchetti NuGet
  • Strumenti della piattaforma UWP (Universal Windows Platform)
  • Windows 10 SDK (versione più recente per questa versione di Visual Studio)

Componenti facoltativi:

  • IntelliCode
  • IntelliTrace (solo Enterprise)
  • Connettività dispositivi USB
  • Strumenti di piattaforma UWP (Universal Windows Platform) C++ (v143)
  • Strumenti della piattaforma UWP (Universal Windows Platform) per C++ (v142)
  • Strumenti della piattaforma UWP (Universal Windows Platform) per C++ (v141)
  • Debugger grafica e profiler GPU per DirectX
  • Windows 11 SDK
  • Windows 10 SDK (altre versioni)
  • Strumenti per architettura e analisi
  • IntelliCode
  • IntelliTrace (solo Enterprise)
  • Connettività dispositivi USB
  • Strumenti della piattaforma UWP (Universal Windows Platform) per C++ (v142)
  • Strumenti della piattaforma UWP (Universal Windows Platform) per C++ (v141)
  • Debugger grafica e profiler GPU per DirectX
  • Windows 11 SDK
  • Windows 10 SDK (altre versioni)
  • Strumenti per architettura e analisi

Sviluppo di giochi con C++

Inclusi:

  • Funzionalità di base per C++
  • Windows Universal C Runtime
  • Aggiornamento di C++ 2019 Redistributable
  • MSVC v143 - Visual Studio 2022 C++ x64/x86 build tools (versione più recente)

Componenti facoltativi:

  • Strumenti di profilatura C++
  • C++ AddressSanitizer
  • Windows 10 SDK (versione più recente per questa versione di Visual Studio)
  • IntelliCode
  • IntelliTrace (solo Enterprise)
  • Windows 11 SDK
  • Windows 10 SDK (altre versioni)
  • IncrediBuild - Accelerazione della compilazione
  • Cocos
  • Programma di installazione di Unreal Engine
  • Supporto IDE Android per Unreal Engine
  • Funzionalità di base per C++
  • Windows Universal C Runtime
  • Aggiornamento di C++ 2019 Redistributable
  • MSVC v142 - Visual Studio 2019 C++ x64/x86 build tools (versione più recente)

Componenti facoltativi:

  • Strumenti di profilatura C++
  • Windows 10 SDK (versione più recente per questa versione di Visual Studio)
  • IntelliCode
  • IntelliTrace (solo Enterprise)
  • Windows 11 SDK
  • Windows 10 SDK (altre versioni)
  • IncrediBuild - Accelerazione della compilazione
  • Cocos
  • Programma di installazione di Unreal Engine
  • Supporto IDE Android per Unreal Engine

Sviluppo di applicazioni per dispositivi mobili con C++

Inclusi:

  • Funzionalità di base per C++
  • Programma di installazione di Android SDK (livello API 25) (installazione locale per sviluppo di applicazioni per dispositivi mobili con C++)

Componenti facoltativi:

  • Android NDK (R21E)
  • Apache Ant (1.9.3)
  • Strumenti di sviluppo per app Android in C++
  • IntelliCode
  • Intel Hardware Accelerated Execution Manager (HAXM) (installazione locale)
  • Strumenti di sviluppo per app iOS in C++
  • IncrediBuild - Accelerazione della compilazione
  • Android NDK (R16B)
  • Apache Ant (1.9.3)
  • Strumenti di sviluppo per app Android in C++
  • IntelliCode
  • Emulatore Google Android (livello API 25) (installazione locale)
  • Intel Hardware Accelerated Execution Manager (HAXM) (installazione locale)
  • Android NDK (R16B) (a 32 bit)
  • Strumenti di sviluppo per app iOS in C++
  • IncrediBuild - Accelerazione della compilazione

Singoli componenti

È possibile installare questi componenti in modo indipendente da qualsiasi carico di lavoro.

  • Diagnostica di JavaScript
  • Live Share
  • Runtime della piattaforma UWP (Universal Windows Platform) C++ per Build Tools v142
  • Pubblicazione ClickOnce
  • Microsoft Visual Studio Installer Projects
  • Windows SDK

Librerie e intestazioni

  • Intestazioni e librerie Windows
  • Windows Universal C Runtime (CRT)
  • libreria standard C++
  • ATL
  • MFC
  • Libreria di classi .NET Framework
  • Libreria di supporto C++ per .NET
  • OpenMP 2.0
  • Più di 900 librerie open source tramite il catalogo vcpkg
Libreria o intestazione Visual Studio Express per Windows Visual Studio Express per Windows Desktop Visual Studio Professional/Community Visual Studio Enterprise
Intestazioni e librerie Windows e libreria CRT (X) X X X
libreria standard C++ X X X X
ATL X X
MFC X X
Libreria di classi .NET Framework X X X
Libreria di supporto C++ per .NET X X X
OpenMP 2.0 X X X X

Sistemi di compilazione e di progetto

  • CMake
  • Qualsiasi sistema di compilazione tramite Apri cartella
  • Compilazioni da riga di comando (msbuild.exe)
  • Multitargeting nativo
  • Multitargeting gestito
  • Compilazioni parallele
  • Personalizzazioni compilazioni
  • Estendibilità di pagine delle proprietà
Funzionalità di compilazione o di progetto Visual Studio Express per Windows Visual Studio Express per Windows Desktop Visual Studio Professional/Community Visual Studio Enterprise
Compilazioni da riga di comando (msbuild.exe) X X X X
Multitargeting nativo X X X
Multitargeting gestito X X X
Compilazioni parallele X X X X
Personalizzazioni compilazioni X X X X
Estendibilità di pagine delle proprietà X X X X

Modelli di progetto

A seconda dei carichi di lavoro installati sono disponibili i modelli di progetto riportati di seguito.

Desktop di Windows:

  • Progetto vuoto
  • App console
  • Creazione guidata applicazione desktop di Windows
  • Applicazione desktop di Windows
  • Progetto elementi condivisi
  • App MFC
  • Libreria di collegamento dinamico
  • Progetto CLR vuoto
  • App console CLR
  • Libreria statica
  • Progetto CMake
  • Progetto ATL
  • Libreria di collegamento dinamico MFC
  • Libreria di classi CLR
  • Progetto makefile (Windows)
  • Controllo ActiveX MFC
  • Progetto per unit test nativi
  • Google Test

Piattaforma UWP (Universal Windows Platform) (C++/CX):

  • App vuota
  • App DirectX 11 e XAML
  • App DirectX 11
  • App DirectX 12
  • App unit test
  • DLL
  • Componente Windows Runtime
  • Libreria statica
  • Progetto di creazione pacchetti per applicazioni Windows

Linux:

  • App console (Linux)
  • Progetto vuoto (Linux)
  • Intermittenza Raspberry Pi
  • Progetto makefile (Linux)
Modello Visual Studio Express per Windows Visual Studio Express per Windows Desktop Visual Studio Professional/Community Visual Studio Enterprise
Modelli XAML per piattaforma UWP, Windows 8.1, Windows Phone 8.0 X X X
Applicazione Direct3D X X X
DLL (Windows universale) X X X
Libreria statica (Windows universale) X X X
Componente Windows Runtime X X X
App unit test (Windows universale) X X X
Progetto ATL X X
Libreria di classi (CLR) X X X
Applicazione console CLR X X X
Progetto CLR vuoto X X X
Creazione guidata personalizzata X X
Progetto vuoto X X X
Progetto makefile X X X
Controllo ActiveX MFC X X
Applicazione MFC X X
DLL MFC X X
Progetto di test X X X X
Progetto console Win32 X X X
Progetto Win32 X X X

Strumenti

  • Incremental Linker (Link.exe)
  • Utilità Microsoft Makefile (Nmake.exe)
  • Lib Generator (Lib.exe)
  • Windows Resource Compiler (Rc.exe)
  • Windows Resource to Object Converter (CvtRes.exe)
  • Browse Information Maintenance Utility (BscMake.exe)
  • C++ Name Undecorator (Undname.exe)
  • COFF/PE Dumper (Dumpbin.exe)
  • COFF/PE Editor (Editbin.exe)
  • MASM (Ml.exe)
  • Spy++
  • ErrLook
  • AtlTrace
  • Regole di inferenza
  • Ottimizzazioni PGO
Strumento Visual Studio Express per Windows Visual Studio Express per Windows Desktop Visual Studio Professional/Community Visual Studio Enterprise
Incremental Linker (Link.exe) X X X X
Program Maintenance Utility (Nmake.exe) X X X
Lib Generator (Lib.exe) X X X X
Windows Resource Compiler (Rc.exe) X X X X
Windows Resource to Object Converter (CvtRes.exe) X X X
Browse Information Maintenance Utility (BscMake.exe) X X X X
C++ Name Undecorator (Undname.exe) X X X X
COFF/PE Dumper (Dumpbin.exe) X X X X
COFF/PE Editor (Editbin.exe) X X X X
MASM (Ml.exe) X X
Spy++ X X
ErrLook X X
AtlTrace X X
Devenv.com X X
Regole di inferenza X X
Aggiornamento di progetti vcproj VCBuild a MSBuild (VCUpgrade.exe) X X X X
Ottimizzazioni PGO X X

Funzionalità di debug

  • Debug nativo
  • natvis (visualizzazione del tipo nativo)
  • Debug della grafica
  • Debug gestito
  • Utilizzo GPU
  • Utilizzo memoria
  • Debug remoto
  • Debug SQL
  • Analisi codice statico
Funzionalità di debug Visual Studio Express per Windows Visual Studio Express per Windows Desktop Visual Studio Professional/Community Visual Studio Enterprise
Debug nativo X X X X
natvis (visualizzazione del tipo nativo) X X X X
Debug della grafica X X X
Debug gestito X X X
Utilizzo GPU X X X
Utilizzo memoria X X X
Debug remoto X X X X
Debug SQL X X
Analisi codice statico Limitato Limitato X X

Editor e finestre di progettazione

  • XAML Designer
  • Editor/Progettazione stili CSS
  • Editor/Finestra di progettazione HTML
  • Editor XML
  • Editor codice sorgente
  • Funzionalità di produttività: refactoring, motore IntelliSense EDG, formattazione del codice C++
  • Progettazione Windows Form
  • Data Designer
  • Editor risorse native (file .rc)
  • Resource Editors
  • Editor dei modelli
  • Finestra di progettazione shader
  • Convalida delle dipendenze in tempo reale (solo Enterprise)
  • Diagrammi dei livelli architetturali (solo Enterprise)
  • Convalida architettura (solo Enterprise)
  • Clone di codice (solo Enterprise)
Editor o finestra di progettazione Visual Studio Express per Windows Visual Studio Express per Windows Desktop Visual Studio Professional/Community Visual Studio Enterprise
XAML Designer X X X
Editor/Progettazione stili CSS X X X X
Editor/Finestra di progettazione HTML X X X X
Editor XML X X X X
Editor codice sorgente X X X X
Funzionalità di produttività: refactoring, IntelliSense, formattazione codice C++ X X X X
Progettazione Windows Form X X X
Data Designer X X
Editor risorse native (file .rc) X X
Resource Editors X X X X
Editor dei modelli X X X
Finestra di progettazione shader X X X

Funzionalità relative ai dati

  • Data Designer
  • Oggetti dati
  • Servizi Web
  • Esplora server
Funzionalità relativa ai dati Visual Studio Express per Windows Visual Studio Express per Windows Desktop Visual Studio Professional/Community Visual Studio Enterprise
Data Designer X X
Oggetti dati X X
Servizi Web X X
Esplora server X X

Estendibilità e automazione

  • Modelli a oggetti di estendibilità
  • Modello di codice
  • modello di progetto
  • Modello dell'editor di risorse
  • Modello di procedura guidata
  • Modello a oggetti del debugger
Estendibilità e automazione Visual Studio Express per Windows Visual Studio Express per Windows Desktop Visual Studio Professional/Community Visual Studio Enterprise
Modelli a oggetti di estendibilità X X
Modello di codice X X
modello di progetto X X
Modello dell'editor di risorse X X
Modello di procedura guidata X X
Modello a oggetti del debugger X X

Strumenti di gestione del ciclo di vita delle applicazioni

  • Testing unità (C++ nativo Microsoft, Boost.Test, Google Test, CTest)
  • Mappa del codice e grafi delle dipendenze (Professional ed Enterprise)
  • Code coverage (solo Enterprise)
  • Testing manuale (solo Enterprise)
  • Testing esplorativo (solo Enterprise)
  • Gestione dei test case (solo Enterprise)
  • Integrazione del debugger con la mappa del codice (solo Enterprise)
  • Live Unit Testing (solo Enterprise)
  • IntelliTrace (solo Enterprise)
  • IntelliTest (solo Enterprise)
  • Microsoft Fakes (Isolamento unit test) (solo Enterprise)
  • Code coverage (solo Enterprise)
Strumento Visual Studio Express per Windows Visual Studio Express per Windows Desktop Visual Studio Professional/Community Visual Studio Enterprise
Testing unità (framework nativo) X X X X
Testing unità (framework gestito) X X X
Code coverage X
Test manuali X
Testing esplorativo X
Gestione test case X
Mappa codici e grafici delle dipendenze sola lettura X
Debug della mappa codici X

Vedi anche

Installa Visual Studio
Novità di Visual Studio
Tipi di progetto C++ in Visual Studio