关于如何格式化if语句的愚蠢问题

| 在长if语句占用多行的情况下,您是否将AND或OR之类的条件放在这样的新行上:
               if (something
                   && something else)
或像这样:
               if (something &&
                   something else)
    
已邀请:
对于复杂的条件,请考虑将其提取到函数或变量中:
if (complexCondition(foo)) { ..
另外,函数或变量的名称可用于传达条件的含义。这使您的代码更易于阅读。     
我通常采用第二种方式,因为我可以排列语句。但是,只要您保持一致,在编写代码时,两种方法都可以。     
我更喜欢先演绎。我的理由是,出于任何测试目的,通过剪切/粘贴/注释删除条件更加容易。注释掉一行要比从上面的行中删除和注释掉一行要容易得多。当我在执行SQL中的where子句时,这比使用任何其他给定语言的if语句中的要多,但类似。     
考虑到我的dr强,我一开始就避免长时间的测试。我宁愿做这样的事情:
bool fTest1 = A == B ;
bool fTest2 = C ;
bool fTest3 = f(1,2,3) ;
bool fSuccess = ( fTest1 | ftest2 ) & fTest3 ;
if ( fSuccess )
...
否则是这样的:
if (  A == B
&& (  C == D
   || E == F
   )
&&    Z >  Y
) {
    ...
  }
else
  {
    ...
  }
YMMV,当然。 前者更容易调试,测试,记录等。     
我通常使用IDE格式化程序进行格式化,然后重新排列一下使其看起来更漂亮。     

要回复问题请先登录注册