所有bool的简写是或所有bool NO?

Sno*_*man 4 math logic boolean objective-c

通常在我的代码中,我需要检查x个bool的状态是否都为真,或者所有bool都是false.所以我这样做:

BOOL first, second, third;
if((first && second && third) || (!first && !second && !third))
     //do something
Run Code Online (Sandbox Code Playgroud)

作为一个懒惰的程序员,我想知道这种查询是否有一些数学简写,而不是每次都要输入这整个东西?

How*_*ard 5

所有bool相同的简写是测试(成对)平等:

(first==second && second==third)
Run Code Online (Sandbox Code Playgroud)

当然,您可以将此扩展为任意数量的布尔值,并N-1使用运算符进行相等检查.

  • 但请注意:"BOOL"不幸是`signed char`的typedef. (2认同)