Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek popisuje dvě související pravidla, IDE0047
a IDE0048
.
Majetek | Hodnota |
---|---|
ID pravidla | IDE0047 |
název | Odstraňte nepotřebné závorky |
kategorie | Styl |
podkategorie | Jazyková pravidla (předvolby závorek) |
příslušné jazyky | C# a Visual Basic |
Zavedená verze | Visual Studio 2017 |
možnosti | dotnet_style_parentheses_in_arithmetic_binary_operators |
dotnet_style_parentheses_in_relational_binary_operators |
|
dotnet_style_parentheses_in_other_binary_operators |
|
dotnet_style_parentheses_in_other_operators |
Vlastnost | Hodnota |
---|---|
ID pravidla | IDE0048 |
název | Přidání závorek pro přehlednost |
kategorie | Styl |
podkategorie | Jazyková pravidla (předvolby závorek) |
příslušné jazyky | C# a Visual Basic |
Zavedená verze | Visual Studio 2017 |
Možnosti | dotnet_style_parentheses_in_arithmetic_binary_operators |
dotnet_style_parentheses_in_relational_binary_operators |
|
dotnet_style_parentheses_in_other_binary_operators |
|
dotnet_style_parentheses_in_other_operators |
Přehled
Pravidla stylu v této části se týkají předvoleb závorek, včetně použití závorek k objasnění priority aritmetických, relačních a dalších operátorů binárních .
Možnosti
Toto pravidlo má přidružené možnosti pro určení předvoleb na základě typu operátoru:
- Aritmetické binární operátory – dotnet_style_parentheses_in_arithmetic_binary_operators
- Relační binární operátory – dotnet_style_parentheses_in_relational_binary_operators
- Jiné binární operátory – dotnet_style_parentheses_in_other_binary_operators
- Ostatní operátory – dotnet_style_parentheses_in_other_operators
Informace o konfiguraci možností naleznete v tématu Formát možnosti.
dotnet_style_parentheses_in_arithmetic_binary_operators
Vlastnost | Hodnota | Popis |
---|---|---|
název možnosti | dotnet_style_parentheses_in_arithmetic_binary_operators | |
hodnoty možností | always_for_clarity |
Preferovat závorky k objasnění priorit aritmetických operátorů |
never_if_unnecessary |
Preferovat žádné závorky, pokud je zřejmé prioritu aritmetických operátorů | |
výchozí hodnota možnosti | always_for_clarity |
Aritmetické binární operátory jsou: *
, /
, %
, +
, -
, <<
, >>
, &
, ^
a |
.
// dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity
var v = a + (b * c);
// dotnet_style_parentheses_in_arithmetic_binary_operators = never_if_unnecessary
var v = a + b * c;
' dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity
Dim v = a + (b * c)
' dotnet_style_parentheses_in_arithmetic_binary_operators = never_if_unnecessary
Dim v = a + b * c
dotnet_style_parentheses_in_relational_binary_operators
Vlastnost | Hodnota | Popis |
---|---|---|
název možnosti | dotnet_style_parentheses_in_relational_binary_operators | |
hodnoty možností | always_for_clarity |
Preferovat závorky k objasnění priority relačních operátorů |
never_if_unnecessary |
Preferujte nepoužívat závorky, pokud je zřejmá priorita relačního operátoru. | |
výchozí hodnota možnosti | always_for_clarity |
Relační binární operátory jsou: >
, <
, <=
, >=
, is
, as
, ==
a !=
.
// dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity
var v = (a < b) == (c > d);
// dotnet_style_parentheses_in_relational_binary_operators = never_if_unnecessary
var v = a < b == c > d;
' dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity
Dim v = (a < b) = (c > d)
' dotnet_style_parentheses_in_relational_binary_operators = never_if_unnecessary
Dim v = a < b = c > d
dotnet_style_parentheses_in_other_binary_operators
Vlastnost | Hodnota | Popis |
---|---|---|
název možnosti | Preferovaný styl závorek v jiných binárních operátorech v dotnet (dotnet_style_parentheses_in_other_binary_operators) | |
hodnoty možností | always_for_clarity |
Upřednostněte závorky, abyste objasnili prioritu jiných binárních operátorů. |
never_if_unnecessary |
Dávat přednost vynechání závorek, pokud je zřejmé, že jiný binární operátor má přednost. | |
výchozí hodnota možnosti | always_for_clarity |
Ostatní binární operátory jsou: &&
, ||
a ??
.
// dotnet_style_parentheses_in_other_binary_operators = always_for_clarity
var v = a || (b && c);
// dotnet_style_parentheses_in_other_binary_operators = never_if_unnecessary
var v = a || b && c;
' dotnet_style_parentheses_in_other_binary_operators = always_for_clarity
Dim v = a OrElse (b AndAlso c)
' dotnet_style_parentheses_in_other_binary_operators = never_if_unnecessary
Dim v = a OrElse b AndAlso c
dotnet_style_parentheses_in_other_operators
Vlastnost | Hodnota | Popis |
---|---|---|
název možnosti | dotnet_style_parentheses_in_other_operators | |
Možnosti hodnot | always_for_clarity |
Preferovat závorky k objasnění priority jiných operátorů |
never_if_unnecessary |
Raději nepoužívejte závorky, pokud je zřejmé, že má jiný operátor přednost. | |
výchozí hodnota možnosti | never_if_unnecessary |
Tato možnost platí pro operátory jiné než následující:
*
, /
, %
, +
, -
, <<
, >>
, &
, ^
, |
>
, <
, <=
, >=
, is
, as
, ==
, !=
&&
, ||
??
// dotnet_style_parentheses_in_other_operators = always_for_clarity
var v = (a.b).Length;
// dotnet_style_parentheses_in_other_operators = never_if_unnecessary
var v = a.b.Length;
' dotnet_style_parentheses_in_other_operators = always_for_clarity
Dim v = (a.b).Length
' dotnet_style_parentheses_in_other_operators = never_if_unnecessary
Dim v = a.b.Length
Potlačení upozornění
Pokud chcete potlačit pouze jedno porušení, přidejte do zdrojového souboru direktivy preprocesoru, abyste pravidlo zakázali a znovu povolili.
#pragma warning disable IDE0047 // Or IDE0048
// The code that's violating the rule is on this line.
#pragma warning restore IDE0047 // Or IDE0048
Chcete-li pravidlo pro soubor, složku nebo projekt zakázat, nastavte jeho závažnost na none
v konfiguračním souboru .
[*.{cs,vb}]
dotnet_diagnostic.IDE0047.severity = none
dotnet_diagnostic.IDE0048.severity = none
Chcete-li zakázat všechna pravidla stylu kódu, nastavte závažnost pro kategorii Style
na none
v konfiguračním souboru .
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Další informace naleznete v tématu Jak potlačit upozornění analýzy kódu.
Viz také
- pravidla jazykového stylu kódu
- Odkaz na pravidla stylu kódu