1
18
无论如何,它在编译时得到优化,所以运行时没有差别。 像往常一样,你可以争论风格。我的50美分:第一个变体(没有显式的其他变体)更好,因为这样做的代码更少。 当然,在这种情况下,你会这样做
|
2
25
你应该做任何能让代码更清晰的事情。 |
3
6
我想说这样做是一个很好的实践,因为这样做会使修改代码更容易一些。例如,假设您想要打印结果。你可以这样改变它:
这意味着要添加两次打印,否则:
当然,这是一个人为的例子,但它展示了您应该如何使代码尽可能具有可维护性。 |
4
3
因为编译器可能会把它简化为相同的编译代码,所以做你认为更“漂亮”的事情。 请注意,代码优雅是主观的,因此教条式地坚持一种或另一种格式是不必要的。 |
5
2
|
6
2
|
7
2
如果语言需要If/else语句的大括号,我个人喜欢删除else语句和附带的大括号。守则的意图将同样清楚,但守则将 减少缩进 正如其他人提到的,编译器将优化else语句。但如果你在处理解释语言, 必须解释else语句 . 在这种情况下,删除它将导致未成年人( 非常 |
8
2
当然,“else”应该显式声明。 “else”应该显式声明有几个原因:
基于上述概念上的原因,它-当然-取决于您的函数规范。对于某些函数来说,使用这样的代码是有意义的。例如“函数假定访问者没有注册,只有当bla bla bla时他才被注册”。
|
9
1
我倾向于不使用else如果它是多余的,任何开发人员都应该了解将会发生什么:
|
10
1
只需加入一个新的话题,继续做一些更令人兴奋的事情! |
11
0
如果你想回来
|
12
0
没关系。无论哪种方式,编译器都会产生相同的代码。检查现有代码遵循的约定,然后执行相同的操作。 就我个人而言,我不使用“else”,因为它很明显。我发现多余的“else”看起来杂乱无章。 |
13
0
我个人喜欢这种语法:
只是因为我发现如果我这么做
或
或
|
14
0
|
15
0
我决定是否使用“else”取决于我对“if”的语义解释,在某些情况下还取决于返回值。如果我觉得“if”是在两个动作过程或两个返回值之间做出决定,我将使用“else”。如果我觉得这是在正常行动和“提前流产”之间做出决定,我会跳过其他的。在返回值回答问题“Doessomethingfail”的情况下,我通常会将错误返回视为提前中止,即使剩下的唯一要做的就是返回成功,因此跳过“else”。但是,如果返回值询问“Issomething xxx”,那么我将更经常地包含“else”。 |
16
0
这个例子过于简单化了。大多数的答案是提倡一种编码捷径,它回避了关于逻辑分支的真正问题。编译器可以优化else分支,使其在逻辑上等同于不使用else分支,但是为什么要让编译器工作得更多呢?如果这是一种经常被编译的脚本语言,那么就没有理由添加额外的“else”。 而且,源代码分析器不会对此进行优化。额外的“else”将算作另一个逻辑分支。这可能会使您的函数比实际更“复杂”。请参阅“垃圾索引”、“圈复杂度”和其他软件度量。 http://en.wikipedia.org/wiki/Cyclomatic_complexity 如果以下两个例子都得到了相同字节码的编译器优化,那么选择适合您的样式并坚持使用它。就我个人而言,我觉得第一个例子更易于维护。
|
17
0
LLVM Coding Standards Mozilla Coding Style 两者都声明在返回后不应使用else。 |
18
-1
在这种情况下,只需直接返回表达式结果。
但一般来说,我尽量避免从函数中间返回。每个函数有一个返回。 |
A.E · python中具有多个if语句的列表理解 2 年前 |
fc27 · 如果条件python循环不工作,请在中继续 2 年前 |
sentimain · 如何将if语句合并到另一个if语句中? 2 年前 |
bcsfh · 如果出现其他情况,则加倍 2 年前 |
Robbie McM · 如何使列表中的所有数据帧具有相同的列数? 2 年前 |