提问人:Robber Pen 提问时间:4/17/2020 最后编辑:alkRobber Pen 更新时间:4/17/2020 访问量:67
优化复杂逻辑条件
optimize complex logic condition
答:
0赞
bera
4/17/2020
#1
尝试使用布尔变量,例如:
bool one = X || Y;
bool two = one && B;
if(A || two)
而且,如果您想每次都打印结果。
评论
1赞
Eugene Sh.
4/17/2020
请注意,此代码不等同于原始代码,因为它强制对算子的两端进行求值,这在原始代码中不会发生,以防万一(击败短路求值)。||
A
true
1赞
alk
4/17/2020
#2
更好的方式
这主要是品味问题。
查看 OR 和 AND 的另一种方法是将它们视为 if/elseif/elseif 或 if/if/if 构造。
所以这个
if (A || (B && (X || Y)))
会变成
if A
foo();
else if B {
if X
foo();
else if Y
foo();
}
上一个:条件规则常量
评论
if (oktoproceed(A, B, X, Y)) foo();