In regelmäßigen Abständen wundere ich mich darüber:
Der Kurzschluss-ODER würde immer den gleichen Wert zurückgeben, den der kurzgeschlossene ODER-Operator?
Ich gehe davon aus, dass der Kurzschluss ODER immer schneller ausgewertet wird. War der kurzgeschlossene ODER-Operator aus Gründen der Konsistenz in der C # -Sprache enthalten?
Was habe ich vermisst?
f()
eine Ausnahme auslöst, betrachten true || f()
und true | f()
. Sehen Sie den Unterschied? Der erstere Ausdruck wertet aus true
, die Auswertung des letzteren führt dazu, dass eine Ausnahme ausgelöst wird.