Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La versione 14.51 offre numerosi aggiornamenti e correzioni al compilatore C++ Microsoft e ad altri strumenti di compilazione.
- Per altre informazioni sulle novità di Visual Studio, vedere Note sulla versione di Visual Studio 2026.
Novità di MSVC Build Tools versione 14.51
- Introdotta in Visual Studio 2026 versione 18.6 rilasciata a maggio 2026.
Visual Studio 2026 versione 18.6 include il set di strumenti della piattaforma v145 per progetti MSBuild C++ e Microsoft C++ (MSVC) Build Tools versione 14.51. Per accedere a tutte le nuove funzionalità del linguaggio, compilare con /std:c++latest. In alternativa, se si vuole limitare le funzionalità fino a C++23, usare /std:c++23preview.
MSVC Build Tools versione 14.51 mantiene la compatibilità binaria con il codice compilato con gli strumenti MSVC forniti in Visual Studio 2015 o versione successiva. Per altre informazioni sulla compatibilità binaria, vedere Compatibilità binaria C++ tra le versioni di Visual Studio.
| Per informazioni dettagliate su | Visualizza |
|---|---|
| Novità per gli sviluppatori C++ | MSVC Build Tools versione 14.51 di Release Candidate è ora disponibile |
| Miglioramenti della libreria standard (STL) | STL Changelog MSVC Build Tools 14.51 |
| Miglioramenti della conformità del linguaggio C++ | Miglioramenti della conformità C/C++, modifiche del comportamento e correzioni di bug negli strumenti di compilazione Microsoft C++ (MSVC) |
Di seguito sono riportate alcune delle nuove funzionalità disponibili in MSVC Build Tools versione 14.51:
Miglioramenti del linguaggio C++
- Altre funzionalità di C++23 e C++20 e correzioni dei problemi di conformità. Per informazioni dettagliate su C++23, vedere Supporto di C++23 in MSVC Build Tools 14.51.
- Varie correzioni alla gestione della funzione
consteval, tra cui il supporto a constexprnew/deletenei moduli. Il/experimental:constevalVfuncVtablecomportamento è ora abilitato per impostazione predefinita. - Aggiunto il supporto per le funzionalità del linguaggio C: il qualificatore
_Atomice__typeof__per i tipi di funzioni. - Correzione della diagnostica non corretta per i membri della matrice flessibile C99.
- MSVC genera ora file IFC in base alla versione 0.44 della specifica IFC.
- Miglioramento del ripristino degli errori del parser.
Miglioramenti del linguaggio C
Aggiunto il supporto per i qualificatori _Atomic e aggiunto il supporto per i tipi di funzione __typeof__.
Correzione di C4319 che non viene generata durante la compilazione del codice C.
Miglioramenti della libreria standard
- Sono state aggiunte nuove intestazioni C++23:
<flat_map>(P0429R9) e<flat_set>(P1222R4). -
Revisione massiccia
<regex>: correzione di problemi di correttezza e prestazioni di lunga durata. L'implementazione include miglioramenti significativi delle prestazioni. -
Vettorizzazione NEON per ARM64: Prima versione con algoritmi STL vettorizzati con NEON per ARM64/ARM64EC. In precedenza, solo x64/x86 riceveva ottimizzazioni SIMD con SSE4.2 e AVX2. Le implementazioni vettorializzate sono ora disponibili per gli algoritmi, tra cui
swap_ranges(),rotate()reverse(),min_element(),max_element()find(), ,count(), e altro ancora. - Sono state implementate 18 risoluzioni di issue del Library Working Group (LWG), incluse le correzioni per l'overflow nella conversione della durata, il supporto per gli array
construct_ate gli overload constoptional. - Conversioni da interi a stringhe ottimizzate stampando le cifre a coppie. La libreria di modelli standard è ora ottimizzata per la velocità anziché per le dimensioni.
- Aggiunti type traits per rilevare i riferimenti associati a oggetti temporanei (P2255R2).
- Aggiunto il supporto esplicito per la gestione del ciclo di vita (P2590R2).
- Visualizzazioni avanzate del debugger, inclusa una
c_str()funzione intrinseca perbasic_stringche abilita i punti di interruzione condizionali.
Miglioramenti al processo di build
- Supporto di Arm SVE: Supporto dell'estensione SVE (Arm Scalable Vector Extension) in MSVC, incluso il supporto dei tipi front-end, l'abbassamento intrinseco, la rimozione dei registri salvati dal chiamato e il supporto di DIA SDK.
- PGO basata su campioni: Supporto in anteprima per le ottimizzazioni guidate dal profilo basate su campioni. Per altre informazioni, vedere Usare l'ottimizzazione guidata profilo di esempio (SPGO) per migliorare le prestazioni di C++.
- L'ottimizzatore backend C++ migliora la generazione del codice, tra cui un miglior inlining, l'ottimizzazione dei cicli e la corrispondenza di pattern.
- Supporto sperimentale per le direttive MASM x64 Unwind versione 3. Per ulteriori informazioni, vedere direttive Unwind versione 3 (sperimentale)
-
Anteprima di Intel APX: Supporto in anteprima per Intel Advanced Performance Extensions. Per altre informazioni, vedere /feature (x64),
[[msvc::enable(feature:APX)]]e[[msvc::disable(feature:APX)]]. - Abilitazione dell'eliminazione delle informazioni di debug per ridurre le dimensioni del PDB.
Elementi deprecati
- Le seguenti intestazioni sperimentali per coroutine sono ora sconsigliate:
<experimental/coroutine>,<experimental/generator>e<experimental/resumable>. Eseguire la transizione alle coroutine C++20 standard usando l'intestazione<coroutine>.
Funzionalità rimosse
Sono state rimosse le funzionalità non Standard deprecate seguenti:
-
TR1 inclusi lo spazio dei nomi
std::tr1, i vecchiarray::assign()e le vecchie distribuzioni e motori<random>. Deprecato da VS 2017 15.5 (dicembre 2017). -
_ALLOW_RTCc_IN_STLmacro rimossa. La Libreria Standard dei Modelli non supporta l'opzione del compilatore/RTCc, ma/RTCse/RTCu//RTC1rimangono supportate. -
<hash_map>e<hash_set>. Deprecato da VS 2015 (luglio 2015). -
<experimental/filesystem>. Deprecato da VS 2019 16.3 (settembre 2019). -
stdext::checked_array_iteratorestdext::unchecked_array_iterator. Deprecato da VS 2022 17.8 (novembre 2023) per C++17 e versioni successive. -
basic_istream::ipfx()/isfx()ebasic_ostream::opfx()/osfx(). Deprecato da VS 2022 17.9 (febbraio 2024) per C++17 e versioni successive. -
locale::empty(). Deprecato da VS 2022 17.14 (maggio 2025).
Novità di MSVC Build Tools versione 14.50
- Introdotta in Visual Studio 2026 versione 18.0 rilasciata a novembre 2025.
Visual Studio 2026 versione 18.0 include il set di strumenti della piattaforma v145 per i progetti MSBuild C++ e Microsoft C++ (MSVC) Build Tools versione 14.50, che offre la migliore conformità, prestazioni della compilazione e storia delle prestazioni di runtime. Per accedere a tutte le nuove funzionalità del linguaggio, compilare con /std:c++latest. In alternativa, se si vuole limitare le funzionalità fino a C++23, usare /std:c++23preview.
MSVC Build Tools versione 14.50 mantiene la compatibilità binaria con il codice compilato con gli strumenti MSVC forniti in Visual Studio 2015 o versione successiva. Per altre informazioni sulla compatibilità binaria, vedere Compatibilità binaria C++ tra le versioni di Visual Studio.
| Per informazioni dettagliate su | Visualizza |
|---|---|
| Novità per gli sviluppatori C++ | Novità per gli sviluppatori C++ in Visual Studio 2026 versione 18.0 |
| Miglioramenti della libreria standard C++ | STL Changelog MSVC Build Tools 14.50 |
| Aggiornamenti del linguaggio C++ | Aggiornamenti del linguaggio C++ in MSVC Build Tools v14.50 |
| Miglioramenti della conformità del linguaggio C++ | Miglioramenti della conformità C/C++, modifiche del comportamento e correzioni di bug negli strumenti di compilazione Microsoft C++ (MSVC) |
Di seguito sono riportate alcune delle nuove funzionalità disponibili in MSVC Build Tools versione 14.50 e Visual Studio 2026 versione 18.0:
Miglioramenti del linguaggio C++
- C++20 è l'impostazione predefinita per la nuova app console, l'applicazione desktop di Windows, la libreria Dynamic-Link e i progetti C++ della libreria statica.
- La direttiva
#warningdi pre-elaborazione C++23 consente di generare un messaggio di diagnostica senza arrestare la compilazione, come fa#error. Per altre informazioni, vedere#warningdirettiva. - Imposta facilmente gli argomenti della riga di comando del debugger per qualsiasi progetto C++ utilizzando la barra degli strumenti per i progetti
.vcxproj, CMake e Unreal Engine. Questa funzionalità non è più associata al carico di lavoro Sviluppo di giochi con C++ ed è disponibile per tutti gli sviluppatori C++ senza installare altri carichi di lavoro o componenti. Per altre informazioni, vedere Passare argomenti della riga di comando.
Miglioramenti della libreria standard
- Affidabilità e velocità migliorate
<regex>. LWG-2503 ha aggiunto un'opzione multilinea asyntax_option_type. Si tratta di unregexcambiamento comportamentale. Per impostazione predefinita,_REGEX_LEGACY_MULTILINE_MODEè 0, che richiede il comportamento Standard. Impostare_REGEX_LEGACY_MULTILINE_MODEsu 1 per richiedere il comportamento ereditato. Per altre informazioni, vedere Log modifiche STL. - Sono state aggiunte e migliorate implementazioni vettorializzate di molti tipi e funzioni.
Miglioramenti di GitHub Copilot
- La chat di Copilot consente di usare il linguaggio naturale per ottenere risposte alle domande (modalità Ask) o anche implementare automaticamente le modifiche (modalità agente).
- La chat di Copilot è più intelligente con un contesto migliorato per le attività quotidiane. Quando si esegue una ricerca nella codebase e si fa riferimento a righe specifiche nel codice, è possibile ottenere risultati migliori.
- È stata aggiunta un'opzione Azioni Copilot al menu di scelta rapida del pulsante destro del mouse nell'editor di Visual Studio. Usarlo per portare rapidamente un file o righe di codice specifico selezionato all'attenzione di Copilot Chat. È quindi possibile chiedere a Copilot di spiegare cosa fa il codice, apportare ottimizzazioni, generare commenti, generare unit test e altro ancora.
- Migliori completamenti di codice grazie all'intelligenza artificiale per C++. GitHub Copilot usa il contesto dei file pertinenti per migliorare il completamento automatico inline per C++. GitHub Copilot include altri file rilevanti come contesto, che riduce le allucinazioni offrendo suggerimenti più pertinenti e accurati.
- Per altre informazioni, vedere Nuove funzionalità di GitHub Copilot per sviluppatori C++: Aggiornare MSVC, migliorare le prestazioni di compilazione e effettuare il refactoring del codice C++.
Miglioramenti al processo di build
- Visual Studio 2026 include ora CMake 4.1.1 per impostazione predefinita. CMake include anche un generatore di Visual Studio 2026 e supporta progetti SLNX moderni, in modo da poter compilare progetti Visual Studio C++ direttamente da CMake.
- Include la versione più recente del motore IncrediBuild e un'estensione aggiornata che funziona con Visual Studio 2026 versione 18.0.
- Miglioramenti delle prestazioni del runtime back-end del compilatore. Rispetto alla versione 17.14 di Visual Studio, è previsto fino a un miglioramento del 6% nei benchmark RenderThread City Sample e fino a un +3% nei benchmark GameThread di Unreal Engine. Per altre informazioni, vedere Perché aggiornare gli strumenti di compilazione C++.
- L'assistente configurazione di Visual Studio consente di ridefinire i progetti per la compilazione con gli strumenti di compilazione MSVC più recenti. Per ulteriori informazioni, vedere Ripuntare i progetti con l'assistente alla configurazione.
Miglioramenti dell'analisi del codice
- Clang-Tidy miglioramenti dell'analisi del codice offrono opzioni di configurazione avanzate per compilazioni e flussi di lavoro personalizzati più veloci:
- L'analisi del codice include nuove opzioni di configurazione. È ora possibile allocare più processori per eseguire l'analisi del codice come parte della compilazione, accelerando il flusso di lavoro di sviluppo.
- È possibile aggiungere argomenti personalizzati alla riga di comando usata per richiamare
clang-tidy, offrendo il controllo completo sulla configurazione dell'analisi. - Accedere alle nuove opzioni da Project Properties>Code Analysis>Clang-Tidy:
- Supporto di AddressSanitizer per le build ARM64 (anteprima): per qualche tempo, gli strumenti di compilazione MSVC supportano progetti di compilazione destinati a x64 e x86 con AddressSanitizer, che consente di identificare problemi di sicurezza della memoria difficili da trovare con zero falsi positivi in fase di esecuzione e aumentare la sicurezza della memoria. È ora possibile usare AddressSanitizer per usare ARM64 come destinazione. Questa funzionalità è in anteprima.
Miglioramenti della produttività
- Generare un output pre-elaborato per un file C++. In Visual Studio fare clic con il tasto destro del mouse su un file C++ per generare immediatamente l'output pre-elaborato, semplificando il debug di macro e inclusioni e visualizzare immediatamente gli errori:

- Il debugger di Visual Studio mostra ora i valori restituiti delle funzioni inline. Ciò offre visibilità in tempo reale sul comportamento della funzione senza entrare nel codice o impostare controlli, rendendo più veloce individuare i problemi di logica o i risultati imprevisti:

Altre modifiche
- Nel programma di installazione di Visual Studio il carico di lavoro Linux C++ viene rinominato Linux, Mac e lo sviluppo incorporato con C++.
Elementi deprecati
I sistemi operativi di destinazione minimi supportati per MSVC Build Tools versione 14.50 sono Windows 10 o Windows Server 2016.
MSVC Build Tools versione 14.50 non supporta più:
- Windows 7/ Windows Server 2008 R2
- Windows 8/ Windows Server 2012
- Windows 8.1/Windows Server 2012 R2
Queste modifiche consentono prestazioni migliori, sicurezza avanzata e allineamento con le funzionalità della piattaforma Windows più recenti.
L'opzione /await del compilatore MSVC è deprecata e verrà rimossa in una versione futura. Questa opzione ha abilitato un'implementazione preliminare delle coroutine C++ usando l'intestazione <experimental/coroutine> . Gli sviluppatori devono passare alle coroutine C++ standard usando l'intestazione <coroutine> disponibile in C++20 e versioni successive. Per i progetti C++14/17, usare /await:strict (che non è deprecato) per accedere all'intestazione standard <coroutine> senza abilitare altre funzionalità C++20.
Il carico di lavoro per lo sviluppo di dispositivi mobili con C++ per iOS e Android, così come gli strumenti Embedded e IoT (Visualizzatore RTOS, Monitor seriale, Visualizzatore periferiche e Importazione progetti ST), non sono più supportati e verranno rimossi in un aggiornamento futuro. I NDK Android inclusi nel carico di lavoro Sviluppo di dispositivi mobili con C++ rimangono supportati. Questo influisce sul supporto degli strumenti per lo sviluppo di iOS e Android, inclusi nuovi progetti, compilazione e debug.
Funzionalità rimosse
- C++AMP
- Toolchain ARM32: se è ancora necessario compilare per ARM32, usare una versione precedente degli strumenti di compilazione MSVC. Per altre informazioni, vedere Strumenti MSVC delle versioni minori affiancate in Visual Studio 2019.
-
/DEBUG:FASTLINKopzione del linker. Usare/DEBUG:FULLper migliorare il supporto del debug.
Feedback e suggerimenti
Ci piacerebbe sapere cosa ne pensi! È possibile segnalare un problema o suggerire una funzionalità usando l'icona Invia Feedback nell'angolo in alto a destra del programma di installazione o dell'IDE di Visual Studio o da Aiuto>Invia Feedback. È possibile tenere traccia dei problemi usando Visual Studio Developer Community, in cui si aggiungono commenti o si trovano soluzioni. È anche possibile ottenere assistenza gratuita per l'installazione tramite il supporto live chat.
Blogs
Rimanere aggiornati su tutte le nuove versioni sfruttando le informazioni dettagliate e le raccomandazioni disponibili in Microsoft Blog per sviluppatori. I blog includono post approfonditi su un'ampia gamma di funzionalità.
Il blog del team C++ e il blog di Visual Studio sono di particolare interesse.