||, opérateur
Important Il est possible que le présent document ne corresponde pas aux pratiques recommandées pour le développement actuel. Par ailleurs, il se peut que des liens de téléchargement et d'autres ressources ne soient plus valides. La version recommandée actuelle est disponible ici. ArchiveDisclaimer

||, opérateur (Référence C#)

L'opérateur OR conditionnel (||) effectue une opération OR logique sur ses opérandes de type bool, mais évalue uniquement le second opérande, si nécessaire.

L'opération

x || y

correspond à l'opération

x | y

à la différence près que si la valeur true est affectée à x, y n'est pas évalué (car le résultat de l'opération OR est true, quelle que soit la valeur de y). Ce concept porte le nom d'évaluation « de court-circuit ».

L'opérateur OR conditionnel ne peut pas être surchargé, mais les surcharges des opérateurs logiques réguliers et les opérateurs true et false sont, malgré certaines limitations, considérées aussi comme des surcharges des opérateurs logiques conditionnels.

Dans cet exemple, notez que l'expression utilisant || évalue seulement le premier opérande.

// cs_operator_short_circuit_OR.cs
using System;
class MainClass
{
    static bool Method1()
    {
        Console.WriteLine("Method1 called");
        return true;
    }

    static bool Method2()
    {
        Console.WriteLine("Method2 called");
        return false;
    }

    static void Main()
    {
        Console.WriteLine("regular OR:");
        Console.WriteLine("result is {0}", Method1() | Method2());
        Console.WriteLine("short-circuit OR:");
        Console.WriteLine("result is {0}", Method1() || Method2());
    }
}

Sortie

 
regular OR:
Method1 called
Method2 called
result is True
short-circuit OR:
Method1 called
result is True
Afficher:
© 2016 Microsoft