首先我们先来区分一下布尔表达式「and, or」和短路布尔表达式「andalso, orelse」的区别:
在布尔表达式中,and 和 or 两边的表达式都要被求值,即使整个表达式的值只需要第一个表达式就能确定也是如此。比如: X =:= 2 or X =:= 3 当 X 等于 2 时,会先判断 X =:= 2 在判断 X =:= 3,然后返回 true
在短路布尔表达式中,如果第一个表达式的值就可以确定整个表达式的值,那么之后的表达式就不会被执行。比如: X =:= 2 orelse X =:= 3 当 X 等于 2 时,就只判断 X =:= 2 然后返回 true
原文:
https://blog.csdn.net/fishe_r/article/details/80300029
阅读(4530) | 评论(0) | 转发(0) |