Do Boolean operators shortcut in MATLAB?

6 visualizzazioni (ultimi 30 giorni)
Doug Hull
Doug Hull il 18 Gen 2011
(true or whatever) is always true, so whatever never needs to evaluate. Does it?

Risposta accettata

Doug Hull
Doug Hull il 18 Gen 2011
In many programming languages, boolean operators like AND and OR will stop evaluating as soon as the result is known. For instance,
1 | error('Short-circuit')
would never get to the error part, since the 1 is always true.
MATLAB versions >= 6.5 include the new short-circuiting logical operators | | and &&. Use these for all condition tests in loops and similar, and use the old | and & for element-by-element logical operations. You can find details here.
In older versions of MATLAB, the boolean operators | and & are only short-circuit evaluated inside the conditions of IF and WHILE statements. In all other contexts, all parts of the conditional are evaluated.
[From the MATLAB FAQ of Ancient Times]

Più risposte (0)

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by