【发布时间】:2015-07-12 14:30:45
【问题描述】:
如果我有:
bool foo = false; bool bar = true;
如果(foo && bar)
if 语句是否检查 bar 是否为真,还是因为 foo 已经为假而跳过它?
【问题讨论】:
-
在类似 C 的语言中,它是短路的,因此在您的情况下只检查
foo。 -
取决于语言。有时在实施上。
-
谢谢 :) 我一直在考虑这个问题,因为有时 bar 可能是一个函数,如果 foo 为 false,您可能希望避免使用该函数。
-
@Husenap 为了保持良好的代码可读性/质量,我不建议这样做。
-
@addy2012 好吧,就我而言,我有 if(foo && Input.Getkeydown())