Configurazione degli avvisi in Visual Basic
Il compilatore di Visual Basic comprende una serie di avvisi sul codice che potrebbero generare errori di runtime.Le informazioni possono essere utilizzate per scrivere un codice in modo più pulito, veloce e ottimale con un numero minore di bug.Ad esempio, il compilatore genererà un avviso quando l'utente tenta di chiamare un membro di una variabile di un oggetto non assegnato, ritornare da una funzione senza aver impostato il valore di ritorno, oppure eseguire un blocco Try con errori nella logica per il rilevamento delle eccezioni.
A volte il compilatore fornisce una logica aggiuntiva per conto dell'utente in modo che quest'ultimo possa concentrarsi sull'attività in corso anziché sulla necessità di prevedere eventuali errori.Nelle precedenti versioni di Visual Basic, veniva utilizzato Option Strict per limitare la logica aggiuntiva fornita dal compilatore di Visual Basic.La configurazione degli avvisi consente di limitare la logica in modo più efficace, a livello del singolo avviso.
È possibile personalizzare il progetto e disattivare alcuni avvisi non pertinenti all'applicazione e trasformare altri avvisi in errori.In questo argomento viene illustrato come attivare e disattivare gli avvisi.
Attivazione e disattivazione degli avvisi
Gli avvisi possono essere configurati in due modi differenti: mediante Progettazione progetti oppure mediante le opzioni del compilatore /warnaserror e /nowarn.
La scheda Compila della pagina Progettazione progetti consente di attivare e disattivare gli avvisi.Selezionare la casella di controllo Disabilita tutti gli avvisi per disabilitare tutti gli avvisi. Selezionare Considera tutti gli avvisi come errori per fare in modo che tutti gli avvisi vengano considerati come errori.Alcuni avvisi possono essere considerati come errore o avviso nella tabella visualizzata.
Quando Option Strict è impostato su Off, gli avvisi relativi a Option Strict non possono essere considerati indipendenti uno dall'altro.Quando Option Strict è impostato su On, gli avvisi associati sono considerati come errori, indipendentemente dallo stato.Quando Option Strict è impostato su Custom, se si specifica /optionstrict:custom nel compilatore basato su riga di comando, gli avvisi Option Strict possono essere attivati o disattivati in modo indipendente.
L'opzione della riga di comando /warnaserror del compilatore può essere utilizzata anche per specificare se gli avvisi sono considerati come errori.All'opzione è possibile aggiungere un elenco delimitato da virgole per specificare quale avvisi considerare come errori o avvisi utilizzando + oppure -.Nella tabella riportata di seguito sono illustrate in modo dettagliato le possibili opzioni.
Opzione della riga di comando |
Specifica |
---|---|
/warnaserror+ |
Considera tutti gli avvisi come errori |
/warnsaserror- |
Non considerare gli avvisi come errori.Questa è l'impostazione predefinita. |
/warnaserror+:<warning list> |
Considerare gli avvisi specifici come errori, elencati in base al numero ID di errore in un elenco delimitato da virgole. |
/warnaserror-:<warning list> |
Non considerare gli avvisi specifici come errori, elencati in base al numero ID di errore in un elenco delimitato da virgole. |
/nowarn |
Non segnalare gli avvisi. |
/nowarn:<warning list> |
Non segnalare gli avvisi specificati, elencati in base al numero ID di errore in un elenco delimitato da virgole. |
Nell'elenco degli avvisi sono riportati i numeri ID di errore degli avvisi che dovrebbero essere considerati come errori, che possono essere utilizzati con le opzioni della riga di comando per attivare o disattivare gli avvisi specifici.Se l'elenco degli avvisi contiene un numero non valido, viene generato un errore.
Esempi
Nella tabella di esempi degli argomenti della riga di comando riportata di seguito sono illustrate le attività di ciascun argomento.
Argomento |
Descrizione |
---|---|
vbc /warnaserror |
Specifica di considerare tutti gli avvisi come errori. |
vbc /warnaserror:42024 |
Specifica di considerare l'avviso 42024 come errore. |
vbc /warnaserror:42024,42025 |
Specifica di considerare gli avvisi 42024 e 42025 come errori. |
vbc /nowarn |
Specifica di non segnalare alcun avviso. |
vbc /nowarn:42024 |
Specifica di non segnalare l'avviso 42024. |
vbc /nowarn:42024,42025 |
Specifica di non segnalare gli avvisi 42024 e 42025. |
Tipi di avvisi
Di seguito viene riportato un elenco di avvisi che possono essere considerati come errori.
Avvisi di conversione implicita
Generati per le istanze di conversione implicita.Non comprendono conversioni implicite da un tipo numerico intrinseco in una stringa quando si utilizza l'operatore &.Nei nuovi progetti, tali avvisi sono disattivati per impostazione predefinita.
ID: 42016
Avvisi dell'invocazione del metodo di associazione anticipata e risoluzione dell'overload
Generati per le istanze di associazione anticipata.Nei nuovi progetti, tali avvisi sono disattivati per impostazione predefinita.
ID: 42017
Avvisi degli operandi del tipo oggetto
Generati quando si verificano gli operandi del tipo Object che potrebbero generare un errore con Option Strict On.Nei nuovi progetti, tali avvisi sono attivati per impostazione predefinita.
ID: 42018 e 42019
Avvisi delle dichiarazioni che richiedono la clausole "As"
Generati quando una dichiarazione della variabile, funzione o proprietà non provvista di una clausola As avrebbe generato un errore con Option Strict On.Si presuppone che le variabili a cui non è assegnato un tipo siano di tipo Object.Nei nuovi progetti, tali avvisi sono attivati per impostazione predefinita.
ID: 42020 (dichiarazione di variabile), 42021 (dichiarazione di funzione) e 42022 (dichiarazione di proprietà).
Avvisi dell'eventuale eccezione dovuta a un riferimento a un valore nullo
Generati quando viene utilizzata una variabile prima che sia assegnato un valore.Nei nuovi progetti, tali avvisi sono attivati per impostazione predefinita.
ID: 42104, 42030
Avvisi delle variabili locali non utilizzate
Generati quando una variabile locale viene dichiarata ma a cui non viene mai fatto riferimento.Tali avvisi sono attivati per impostazione predefinita.
ID: 42024
Avvisi dell'accesso al membro condiviso tramite le variabili di istanza
Generati quando l'accesso a un membro condiviso tramite un'istanza potrebbe avere effetti collaterali o quando l'accesso a un membro condiviso tramite una variabile di istanza non è la parte destra di un'espressione o viene passato come un parametro.Nei nuovi progetti, tali avvisi sono attivati per impostazione predefinita.
ID: 42025
Avvisi dell'operatore ricorsivo o dell'accesso alle proprietà
Generati quando il corpo di una routine utilizza lo stesso operatore o proprietà in cui è definito.Nei nuovi progetti, tali avvisi sono attivati per impostazione predefinita.
ID: 42004 (operatore), 42026 (proprietà)
Avvisi della funzione o dell'operatore senza valore di ritorno
Generati quando alla funzione o all'operatore non è associato alcun valore di ritorno specificato.Ad esempio, l'omissione di un Set sulla variabile locale implicita con lo stesso nome della funzione.Nei nuovi progetti, tali avvisi sono attivati per impostazione predefinita.
ID: 42105 (funzione), 42016 (operatore)
Avvisi del modificatore degli overload utilizzato in un modulo
Generati quando Overloads viene utilizzato in un Module.Nei nuovi progetti, tali avvisi sono attivati per impostazione predefinita.
ID: 42028
Avvisi dei blocchi catch duplicati o sovrapposti
Generati quando un blocco Catch non viene mai raggiunto a causa del rapporto con altri blocchi Catch definiti.Nei nuovi progetti, tali avvisi sono attivati per impostazione predefinita.
ID: 42029, 42031
Vedere anche
Riferimenti
Finestra di dialogo Informazioni sulle eccezioni
Istruzione Try...Catch...Finally (Visual Basic)
Pagina Compilazione, Progettazione progetti (Visual Basic)
Avvisi del compilatore disinseriti per impostazione predefinita