Konfigurace upozornění v jazyce Visual Basic
Kompilátor Visual Basic obsahuje sadu varování o kódu, který může způsobit chyby v režimu běhu. Tyto informace můžete použít k psaní čistšího, rychlejšího a lepšího kódu s menším počtem chyb.Například kompilátor bude vyrábět upozornění, když se uživatel pokusí vyvolat člen nepřiřazené objektové proměnné, pokusí se vrátit z funkce bez nastavení návratové hodnoty nebo provést blok Try s chybami v logice zachytávání výjimek.
Někdy kompilátor poskytuje zvláštní logiku ve jménu uživatele tak, aby se uživatel mohl zaměřit na úlohy po ruce, nikoli na předvídání možných chyb.V předchozích verzích Visual Basic, byla použita Option Strict k omezení další logiku, kterou poskytuje kompilátor Visual Basic. Konfigurace upozornění vám umožňuje omezit tuto logiku přesnějším způsobem na úrovni jednotlivých upozornění.
Můžete chtít přizpůsobit projekt a vypnout některé upozornění, které se nevztahují k vaši aplikace a pří tom změnit některé upozornění na chyby.Tato stránka vysvětluje jak zapnout a vypnout jednotlivá upozornění.
Vypnutí a zapnutí upozornění
Existují dva různé způsoby konfigurace upozornění: můžete nakonfigurovat pomocí Návrháře projektu, nebo můžete použít /warnaserror a /nowarn volby kompilátoru.
Záložka Kompilovat na stránce Návrháři projektu umožňuje vypnutí a zapnutí upozornění.Vyberte zaškrtávací políčko Vypnout všechny výstrahy, chcete-li vypnout všechna upozornění; vyberte Považovat všechny výstrahy za chyby k zacházení se všemi upozorněními jako s chybami.Některá individuální upozornění můžou být změněny na chyby nebo upozornění, jak je požadováno v zobrazené tabulce.
Pokud je Možnost Strict nastavena na Off, s upozorněními souvisejícími s Možnost Strict není možno zacházet nezávisle na sobě.Pokud je Možnost Strict nastavena na On, přidružené upozornění jsou považovány za chyby, bez ohledu na to jaký je jejich stav.Pokud je Možnost Strict nastavena na Custom zadáním /optionstrict:custom v příkazové řádce kompilátoru, můžou být Možnost Strict zapnuty nebo vypnuty samostatně.
Možnost příkazové řádky kompilátoru /warnaserror lze také použít, k určení zda jsou upozornění považovány za chyby. K tomuto nastavení můžete přidat čárkou oddělený seznam, k určení která upozornění mají být zpracovány jako chyby nebo upozornění pomocí + nebo -.Následující tabulka uvádí možné volby.
Možnosti příkazového řádku: |
Význam |
---|---|
/warnaserror+ |
Zacházet s všemi upozorněními jako s chybami |
/warnsaserror- |
Nepovažovat upozornění jako chybu.Tato možnost je výchozí. |
/warnaserror+:<warning list> |
Považovat zvolené upozornění za chyby, seřazené podle jejich identifikační číslo v seznamu hodnot oddělených čárkou r. |
/warnaserror-:<warning list> |
Nepovažovat zvolené upozornění za chyby, seřazené podle jejich identifikační číslo v seznamu hodnot oddělených čárkou r. |
/nowarn |
Nereportovat upozornění. |
/nowarn:<warning list> |
Nereportovat zvolené upozornění, seřazené podle jejich identifikační číslo v seznamu hodnot oddělených čárkou r. |
Seznam upozornění obsahuje identifikační čísla chyb upozornění, která by měly být považovány za chyby, který lze použít s parametry příkazové řádky k vypnutí a zapnutí specifických varování.Pokud seznam upozornění obsahuje neplatný číslo, je hlášena chyba.
Příklady
Tato tabulka příkladů argumentů příkazové řádky obsahuje význam jednotlivých argumentů.
Argument |
Description |
---|---|
vbc /warnaserror |
Určuje, že všechna upozornění mají být považovány za chyby. |
vbc /warnaserror:42024 |
Určuje, že upozornění 42024 by mělo být považováno za chybu. |
vbc /warnaserror:42024,42025 |
Určuje, že varování 42024 a 42025 by měly být považovány za chyby. |
vbc /nowarn |
Určuje, že nemají být hlášeny žádná varování. |
vbc /nowarn:42024 |
Určuje, že upozornění 42024 by neměly být hlášeny. |
vbc /nowarn:42024,42025 |
Určuje, že varování 42024 a 42025 by nemělo být hlášeno. |
Typy upozornění
Následující seznam obsahuje upozornění, které by měly být považovány za chyby.
Implicitní převod upozornění
Generovaných pro instance implicitního převodu.Nezahrnují implicitní převod z typu přirozených čísel na řetězec pří použití operátoru &. Výchozí pro nové projekty je vypnuto.
ID: 42016
Metody vyvolány pozdní vazby a upozornění rozlišení přetížení
Generováno pro instance pozdní vazba.Výchozí pro nové projekty je vypnuto.
ID: 42017
Operandy pro varování objektových typů
Generováno v případě že operand typu Object měl vytvoří chybu s Option Strict On. Výchozí pro nové projekty je zapnuto.
ID: 42018 a 42019
Prohlášení vyžaduje varování klauzule 'As'
Generováno při deklaraci proměnná, funkce nebo vlastnost při zjištění, že chybí klauzule As a mělo by dojít k Option Strict On chybě. Proměnné, které nemají jim přiřazený typ, jsou považovány za typ Object. Výchozí pro nové projekty je zapnuto.
ID: 42020 (Deklarace proměnné), 42021 (funkce prohlášení) a 42022 (vlastnost prohlášení).
Varování pro možné NULL referenční výjimky
Generováno v případě, že je proměnná použita před tím než jí byla přiřazena hodnota.Výchozí pro nové projekty je zapnuto.
ID: 42104, 42030
Upozornění pro nepoužité místní proměnné
Generováno v případě, že je deklarována lokální proměnná, ale není nikde použita.Výchozí hodnota je.
ID: 42024
Přístup ke sdíleným členům prostřednictvím instance upozornění pro proměnné
Generováno v případě, že přístup prostřednictvím instance sdílených členům může mít vedlejší účinky nebo při přístupu k sdílený členům prostřednictvím instance proměnné, která není na pravé straně výrazu nebo je předáván jako parametr.Výchozí pro nové projekty je zapnuto.
ID: 42025
Rekurzivní operátor nebo upozornění pro vlastnosti
Generováno v případě, že tělo rutiny používá stejné operátor nebo vlastnost v jaké je definována.Výchozí pro nové projekty je zapnuto.
ID: 42004 (operátor), 42026 (vlastnost)
Funkce nebo operátor bez upozornění pro návratovou hodnotu
Generováno v případě, když funkce nebo operátor nevrací specifikovanou hodnotu.To zahrnuje vynechání Set v implicitní místní proměnné se stejným názve jako funkce. Výchozí pro nové projekty je zapnuto.
ID: 42105 (funkce), 42016 (operátor)
Upozornění pro modifikátor přetížení použitý v modul
Generováno v případě, kdy Overloads je použit v Module. Výchozí pro nové projekty je zapnuto.
ID: 42028
Upozornění pro duplicitní nebo překrývající se Catch bloky
Generováno v případě, kdy blok Catch není přístupný z důvodu jeho vztahu k jiný blokům Catch, které byly definovány. Výchozí pro nové projekty je zapnuto.
ID: 42029, 42031
Viz také
Referenční dokumentace
Dialogové okno Pomocník výjimky
Zkuste...Úlovek...Nakonec prohlášení (Visual Basic)
Kompilace stránky projektu Designer (Visual Basic)
Upozornění kompilátoru, která jsou ve výchozím nastavení vypnuté