Okresowo zastanawiam się nad tym:
Zwarcie OR zawsze zwróci tę samą wartość, co operator OR nieobwarty?
Oczekuję, że OR zwarcia zawsze będzie oceniać szybciej. Czy więc operator OR nieobwarty obwód został uwzględniony w języku C # dla zachowania spójności?
Czego mi brakowało?
f()powstaje wyjątek, rozważ true || f()i true | f(). Czy widzisz różnicę? Pierwsze wyrażenie oznacza true, a ocena drugiego powoduje zgłoszenie wyjątku.