Menu
CoddyTech

Kurzschlussauswertung

Teil des Abschnitts Grundlagen der Lua-Journey von Coddy. Lektion 23 von 90.

Wenn Lua die Operatoren and und or auswertet, verwendet es eine clevere Optimierung namens Auswertung mit Kurzschluss. Das bedeutet, dass Lua die Auswertung beendet, sobald das endgültige Ergebnis feststeht, und dabei möglicherweise Teile des Ausdrucks vollständig überspringt.

Beim and-Operator weiß Lua sofort, dass der gesamte Ausdruck false sein wird, wenn die erste Bedingung false ist, ohne die zweite Bedingung zu überprüfen:

playerAlive = false
hasWeapon = true

canFight = playerAlive and hasWeapon
-- Lua prüft nur playerAlive (false) und wertet hasWeapon nie aus

Ähnlich gilt für den or-Operator: Wenn die erste Bedingung true ist, weiß Lua, dass das Ergebnis true sein wird, und überspringt die zweite Bedingung:

hasKey = true
hasPassword = false

canEnter = hasKey or hasPassword
-- Lua prüft nur hasKey (true) und wertet hasPassword nie aus

Probier es selbst

Diese Lektion enthält keine Programmieraufgabe.

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen

Übe selbstständig: Online-Lua-Compiler