Coding style 更好的写作方式,如果其他条件
代码是这样运行的,随着代码的增加,它变得不可读Coding style 更好的写作方式,如果其他条件,coding-style,Coding Style,代码是这样运行的,随着代码的增加,它变得不可读 if(!cond1){ //print error }else{ if(!cond2){ // print error }else{ //code goes on..... } } 编写上述代码的另一种方法将非常有用如果使用块来执行真实条件,则更容易理解/调试。这是因为当某件事是真的时,比当某件事不是真的时,情况更为狭窄
if(!cond1){
//print error
}else{
if(!cond2){
// print error
}else{
//code goes on.....
}
}
编写上述代码的另一种方法将非常有用如果使用块来执行真实条件,则更容易理解/调试。这是因为当某件事是真的时,比当某件事不是真的时,情况更为狭窄
如果s,则通常使用而不是嵌套或链接的
来处理此问题:
if (! cond1)
throw error 1;
if (! cond2)
throw error 2;
perform action;
请注意,这假设函数在出错时实际返回,否则将导致错误行为。但是,建议这样做。一般来说,在遇到错误时不要试图恢复操作,应尽快将控制提升到应用程序逻辑的更高级别
特别是,“打印错误”方面应该几乎总是与实际逻辑断开连接,否则您就违反了
因此,当检测到错误条件时,让逻辑执行功能提前退出,并让其他函数负责打印这些错误。
取决于复杂性,您可以考虑将条件分解为自己的函数,并将其重构为:
if (!f1() && !f2() ... ){
...
}
然后让每个条件的函数处理该特定错误,而不是将顶级函数弄乱。这取决于语言和更大的上下文。“不具建设性”。(我倾向于避免不必要的嵌套if
语句,尽管..C风格的语言具有挂起的else if
结构。)如果合适,可以考虑使用开关盒:和
if (!f1() && !f2() ... ){
...
}