![]() |
1
10
理论上,我更喜欢3,因为它避免了两次给变量赋值。在现实世界中,尽管我使用上述四种方法中的任何一种,它将更易于阅读或更清晰地表达我的意图。 |
![]() |
2
4
我更喜欢方法3,因为它更简洁,而且是一个逻辑单元。它只设置一次值,可以作为一个块移动,而且不容易出错(这种情况会发生,特别是在方法1中,如果设置到值1和检查以及可选设置到值2之间由其他语句分隔的话) |
![]() |
3
3
3)是你想要发生的最清楚的表达。我认为所有其他的都需要一些额外的思考来确定哪个值最终会出现在变量中。 实际上,我会使用三元运算符(?:)如果我使用的语言支持它。我更喜欢用功能性或声明性的风格来写,而不是尽可能用命令式。 |
![]() |
4
1
我倾向于自己用很多。
我所做的大多数编码都是用C编写的,但是我仍然倾向于避开terniary操作符,除非我使用(大部分)局部变量。在三元运算符中,如果在某个结构中调用三层,那么行的长度会很快变长,这会迅速降低可读性。 |
![]() |
5
1
这不是不在提供这种语法的语言中使用它们的理由。顺便说一下,在我最后一次计算之后,它包括了所有当前主流语言。
这是真的。然而,通常可以肯定的是,这样的扩展绝对不会发生,因为
在这种情况下,我总是喜欢表达式变量而不是语句变量,因为它减少了语法混乱,提高了表达能力。在其他情况下,我倾向于
|
![]() |
6
0
|
![]() |
7
0
在这种情况下,情况可能不会发生。我会选择1或2。否则它只是基于我想要代码做什么。(我同意克鲁泽的观点) |
![]() |
8
0
如果没有的话,我倾向于使用……返回。 但如果你想返回一个变量。先把不合格者排除在外有助于提高其可读性。它实际上取决于语句的上下文和语言。case语句可能工作得更好,而且大部分时间都是可读的,但是在vb下性能会受到影响,因此在该特定情况下,一系列if/else语句更有意义。 |
![]() |
9
0
方法1或方法3。方法1可以避免额外的范围入口/出口,但方法3可以避免额外的分配。我倾向于避免使用方法2,因为我尽量保持条件逻辑尽可能简单(在本例中是!是无关的,因为它可以重写为方法1而不使用它),同样的原因也适用于方法4。 |
![]() |
10
0
这取决于我测试的条件。 如果是错误标志条件,那么我将使用1)设置错误标志来捕获错误,然后如果条件成功,则清除错误标志。这样就不会丢失错误条件。 其他的我都会用3) 非逻辑只是在阅读代码时增加了混乱——在我的头脑中,不能代表其他人说话:—) |
![]() |
11
0
如果变量具有自然默认值,我将使用1。如果这两个值中的任何一个对于默认值同样合适,那么我将使用2。 |
![]() |
12
0
视情况而定。我喜欢三元运算符,但有时使用“if”语句会更清楚。您选择的四个备选方案中哪一个取决于上下文,但我倾向于选择使代码的功能更清晰的方案,而这会因情况而异。 |
![]() |
Malvineous · 定义编译时间常数的最佳方法 10 年前 |
![]() |
Søren Debois · 执行类型单元表达式的习语iff条件为真 11 年前 |
![]() |
the wolf · 确保矩阵元素长度的“Python”方法 12 年前 |