Periodicamente, mi chiedo questo:
L'OR di cortocircuito restituirebbe sempre lo stesso valore dell'operatore OR non cortocircuitato?
Mi aspetto che il corto circuito O valuterà sempre più rapidamente. Quindi, l'operatore OR non cortocircuitato è stato incluso nel linguaggio C # per coerenza?
Cosa mi sono perso?
f()sollevi un'eccezione, considera true || f()e true | f(). Vedi la differenza? La prima espressione valuta true, la valutazione di quest'ultima si traduce in un'eccezione generata.