Or, opérateur (Visual Basic)
Effectue une disjonction logique sur deux expressions Boolean
, ou une disjonction au niveau du bit sur deux expressions numériques.
Syntaxe
result = expression1 Or expression2
Éléments
result
Obligatoire. Toute expression Boolean
ou numérique. Pour Boolean
comparaison, result
est la disjonction logique inclusive de deux valeurs Boolean
. Pour les opérations au niveau du bit, result
est une valeur numérique représentant la disjonction inclusive au niveau du bit de deux modèles de bits numériques.
expression1
Obligatoire. Toute expression Boolean
ou numérique.
expression2
Obligatoire. Toute expression Boolean
ou numérique.
Notes
Pour la comparaison Boolean
, result
est False
si et seulement si expression1
et expression2
évaluent False
. Le tableau suivant illustre la détermination de result
.
Si expression1 est |
Et expression2 est |
La valeur de result est |
---|---|---|
True |
True |
True |
True |
False |
True |
False |
True |
True |
False |
False |
False |
Notes
Dans une comparaison Boolean
, l’opérateur Or
évalue toujours les deux expressions, ce qui peut inclure l’exécution d’appels de procédure. L’opérateur OrElse effectue un court-circuit, ce qui signifie que si expression1
est True
, expression2
n’est pas évalué.
Pour les opérations au niveau du bit, l’opérateur Or
effectue une comparaison au niveau du bit de bits identiques dans deux expressions numériques et définit le bit correspondant dans result
en fonction du tableau suivant.
Si le bit en expression1 est |
Et le bit en expression2 est |
Le bit en result est |
---|---|---|
1 | 1 | 1 |
1 | 0 | 1 |
0 | 1 | 1 |
0 | 0 | 0 |
Notes
Étant donné que les opérateurs logiques et au niveau du bit ont une priorité inférieure à d’autres opérateurs arithmétiques et relationnels, toutes les opérations au niveau du bit doivent être placées entre parenthèses pour garantir l’exécution précise.
Types de données
Si les opérandes se composent d’une expression Boolean
et d’une expression numérique, Visual Basic convertit l’expression Boolean
en valeur numérique (–1 pour True
et 0 pour False
) et effectue une opération au niveau du bit.
Pour une comparaison Boolean
, le type de données du résultat est Boolean
. Pour une comparaison au niveau du bit, le type de données de résultat est un type numérique approprié pour les types de données de expression1
et de expression2
. Consultez le tableau « Comparaisons relationnelles et au niveau du bit » dans Types de données des Résultats d’opérateur.
Surcharge
L’opérateur Or
peut être surchargé, ce qui signifie qu’une classe ou une structure peut redéfinir son comportement lorsqu’un opérande a le type de cette classe ou structure. Si votre code utilise cet opérateur sur ce type de classe ou structure, veillez à comprendre son comportement une fois qu’il est redéfini. Pour plus d'informations, consultez Operator Procedures.
Exemple 1
L’exemple suivant utilise l’opérateur Or
pour effectuer une disjonction logique inclusive sur deux expressions. Le résultat est une valeur Boolean
qui indique si l’une des deux expressions est True
.
Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstCheck, secondCheck, thirdCheck As Boolean
firstCheck = a > b Or b > c
secondCheck = b > a Or b > c
thirdCheck = b > a Or c > b
L’exemple précédent produit des résultats de True
, True
et False
, respectivement.
Exemple 2
L’exemple suivant utilise l’opérateur Or
pour effectuer une disjonction logique inclusive sur les bits individuels de deux expressions numériques. Le bit dans le modèle de résultat est défini si l’un des bits correspondants dans les opérandes est défini comme 1.
Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstPattern, secondPattern, thirdPattern As Integer
firstPattern = (a Or b)
secondPattern = (a Or c)
thirdPattern = (b Or c)
L’exemple précédent produit respectivement les résultats de 10, 14 et 14.