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.
Aggiornamento: novembre 2007
In questo argomento sono elencate le nuove funzionalità del compilatore di Visual C++ 2005.
Nota: |
|---|
Il compilatore di Visual C++ può essere eseguito esclusivamente nei sistemi operativi riportati di seguito: Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003. |
Osservazioni
Il compilatore di Visual C++ 2005 contiene le nuove funzionalità riportate di seguito:
In questa versione, il compilatore presenta modifiche recentemente apportate. Per ulteriori informazioni, vedere Ultime modifiche al compilatore Visual C++ 2005.
Compilatori incrociati e nativi a 64 bit. Per ulteriori informazioni, vedere Opzioni del compilatore e Convenzioni del software x64.
È stata aggiunta l'opzione del compilatore /analyze (Analisi codice a livello aziendale).
È stata aggiunta l'opzione del compilatore /bigobj.
Sono state aggiunte le opzioni /clr:pure, /clr:safe e /clr:oldSyntax. Per ulteriori informazioni, vedere /clr (Compilazione Common Language Runtime).
Opzioni del compilatore obsolete: molte opzioni del compilatore vengono considerate obsolete in questa versione. Per ulteriori informazioni, vedere Opzioni del compilatore obsolete in Visual C++ 2005.
È stato ridotto il doppio thunk nel codice /clr. Per ulteriori informazioni, vedere Doppio thunk (C++).
L'opzione /EH (Modello di gestione delle eccezioni) o /EHs non può più essere utilizzata per rilevare un'eccezione generata con un elemento diverso da un'istruzione throw. Utilizzare /EHa.
È stata aggiunta l'opzione del compilatore /errorReport (Segnala gli errori interni del compilatore).
È stata aggiunta l'opzione del compilatore /favor (ottimizzazione per x64).
È stata aggiunta l'opzione del compilatore /FA, /Fa (File di listato).
È stata aggiunta l'opzione del compilatore /FC (Percorso completo del file di codice sorgente nella diagnostica).
È stata aggiunta l'opzione del compilatore /fp (Specifica il comportamento della virgola mobile).
È stata aggiunta l'opzione del compilatore Opzioni /G (Ottimizza per processore).
È stata aggiunta l'opzione del compilatore Opzioni /G (Ottimizza per processore).
Le opzioni del compilatore /G3, /G4, /G5, /G6, /G7 e /GB sono state rimosse. Attualmente il compilatore utilizza un modello misto in base al quale viene eseguito un tentativo di creare il file di output ottimale per tutte le architetture.
L'opzione /Gf è stata rimossa. bensì utilizzare la funzione /GF (Elimina stringhe duplicate).
/GL (Ottimizzazione intero programma) è ora compatibile con /CLRHEADER. Per ulteriori informazioni, vedere /LTCG (Generazione di codice in fase di collegamento).
L'opzione /GR è ora attiva per impostazione predefinita. Per ulteriori informazioni, vedere /GR (Attiva informazioni sui tipi in fase di esecuzione).
L'opzione /GS (Controllo protezione buffer) è ora in grado di proteggere i parametri dei puntatori vulnerabili. /GS è ora attiva per impostazione predefinita e può essere utilizzata anche con funzioni compilate in MSIL con /clr (Compilazione Common Language Runtime).
È stata aggiunta l'opzione del compilatore /homeparams (Copia i parametri del registro nello stack).
È stata aggiunta l'opzione del compilatore /hotpatch (Crea immagine con funzionalità di patch a caldo).
Sono stati aggiornati i sistemi euristici delle funzioni inline. Per ulteriori informazioni, vedere inline, __inline, __forceinline e inline_depth
Sono state aggiunte numerose funzioni intrinseche nuove e molti intrinseci precedentemente non documentati sono ora documentati. Per ulteriori informazioni, vedere Alphabetical Listing of Intrinsic Functions.
Per impostazione predefinita qualsiasi chiamata a new che avrà esito negativo genererà un'eccezione. Per ulteriori informazioni, vedere The new and delete Operators.
Le opzioni del compilatore /ML e /MLd sono state rimosse. In Visual C++ non è più fornito il supporto delle librerie CRT a thread singolo collegate in modo statico. Per ulteriori informazioni, vedere C Run-Time Libraries.
Il compilatore ha implementato l'ottimizzazione del valore restituito denominato, che viene attivata quando si esegue la compilazione con /O1, /O2 (Riduci dimensione, Ottimizza velocità), /Og (Ottimizzazioni globali) e /Ox (Ottimizzazione completa).
L'opzione del compilatore /Oa è stata rimossa, ma verrà ignorata in modo invisibile all'utente. Utilizzare il modificatore noalias o restrict__declspec per specificare il modo in cui il compilatore utilizza gli alias.
L'opzione del compilatore /Op è stata rimossa. bensì utilizzare la funzione /fp (Specifica il comportamento della virgola mobile).
In Visual C++ è ora supportato OpenMP. Per ulteriori informazioni, vedere OpenMP in Visual C++.
È stata aggiunta l'opzione del compilatore /openmp (Attiva supporto OpenMP 2.0).
L'opzione del compilatore /Ow è stata rimossa, ma verrà ignorata in modo invisibile all'utente. Utilizzare il modificatore noalias o restrict__declspec per specificare il modo in cui il compilatore utilizza gli alias.
L'opzione /QI0f è stata rimossa.
L'opzione /QIfdiv è stata rimossa.
È stata aggiunta l'opzione del compilatore /QIPF_B (Errori per lo stepping di CPU B).
È stata aggiunta l'opzione del compilatore /QIPF_C (Errori per lo stepping di CPU C).
È stata aggiunta l'opzione del compilatore /QIPF_fr32 (Non utilizzare i 96 registri in virgola mobile superiori).
È stata aggiunta l'opzione del compilatore /QIPF_noPIC (Genera codice dipendente dalla posizione).
È stata aggiunta l'opzione del compilatore /QIPF_restrict_plabels (Non prevede funzioni create in fase di esecuzione).
/vd (Disattiva spostamenti costruttori) consente ora di utilizzare l'dynamic_cast Operator su un oggetto in corso di costruzione (/vd2)
L'opzione del compilatore /YX è stata rimossa. In sostituzione utilizzare /Yc (Crea il file di intestazione precompilato) o /Yu (Utilizza il file di intestazione precompilato). Se si rimuove /YX dalle configurazioni della build senza eseguire sostituzioni, sarà possibile ottenere generazioni più rapide.
L'opzione /Zc:forScope è ora attiva per impostazione predefinita. Per ulteriori informazioni, vedere /Zc:forScope (Imponi conformità nell'ambito di un ciclo For).
L'opzione /Zc:wchar_t è ora attiva per impostazione predefinita. Per ulteriori informazioni, vedere /Zc:wchar_t (Tipo nativo wchar_t).
L'opzione del compilatore /Zd è stata rimossa. Le informazioni di debug con solo il numero di riga non sono più supportate. Utilizzare invece /Zi. Per ulteriori informazioni, vedere /Z7, /Zi, /ZI (Formato informazioni di debug).
L'opzione /Zg è ora valida esclusivamente per file di codice sorgente C e non per file di codice sorgente C++. Per ulteriori informazioni, vedere /Zg (Genera i prototipi delle funzioni).
È stata aggiunta l'opzione del compilatore /Zx (Esegue il debug di codice Itanium ottimizzato).
Vedere anche
Concetti
Modifiche apportate al compilatore, al linguaggio e agli strumenti Visual C++ 2005
Nota: