Préférences des parenthèses (IDE0047 et IDE0048)

Propriété Value
Identificateur de la règle IDE0047 et IDE0048
Titre IDE0047 : supprimer les parenthèses inutiles
IDE0048 : ajouter des parenthèses pour plus de clarté
Catégorie Style
Sous-catégorie Règles de langage
Langues applicables C# et Visual Basic
Version introduite Visual Studio 2017 version 15.8

Vue d’ensemble

Les règles de style de cette section concernent les préférences de parenthèses, notamment l’utilisation de parenthèses pour les opérateurs arithmétiques, relationnels et autres opérateurs binaires.

dotnet_style_parentheses_in_arithmetic_binary_operators

Propriété Value
Nom de l’option dotnet_style_parentheses_in_arithmetic_binary_operators
Valeurs d’option always_for_clarity - Préférer les parenthèses pour clarifier la priorité des opérateurs arithmétiques (*, /, %, +, -, <<, >>, &, ^, |)

never_if_unnecessary - Préférer éviter les parenthèses si la priorité des opérateurs arithmétiques (*, /, %, +, -, <<, >>, &, ^, |) est évidente
Valeur d’option par défaut always_for_clarity

Exemple

// 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

Propriété Value
Nom de l’option dotnet_style_parentheses_in_relational_binary_operators
Valeurs d’option always_for_clarity - Préférer les parenthèses pour clarifier la priorité des opérateurs relationnels (>, <, <=, >=, is, as, ==, !=)

never_if_unnecessary - Préférer éviter les parenthèses si la priorité des opérateurs relationnels (>, <, <=, >=, is, as, ==, !=) est évidente
Valeur d’option par défaut always_for_clarity

Exemple

// 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

Propriété Value
Nom de l’option dotnet_style_parentheses_in_other_binary_operators
Valeurs d’option always_for_clarity - Préférer les parenthèses pour clarifier la priorité des autres opérateurs binaires (&&, ||, ??)

never_if_unnecessary - Préférer éviter les parenthèses si la priorité des autres opérateurs binaires (&&, ||, ??) est évidente
Valeur d’option par défaut always_for_clarity

Exemple

// 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

Propriété Value
Nom de l’option dotnet_style_parentheses_in_other_operators
Valeurs d’option always_for_clarity - Préférer les parenthèses pour clarifier la priorité des opérateurs

never_if_unnecessary - Préférer éviter les parenthèses si la priorité des opérateurs est évidente
Valeur d’option par défaut never_if_unnecessary

Exemple

// 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

Voir aussi