![]() |
1
4
右侧。左侧是C/C++中的一个传统,因为人们有时会忘记并使用“=”而不是“=”,而在左侧放置const会导致编译错误。 |
![]() |
2
5
很多人会说lhs,因为它会阻止你做一些微妙和有害的事情,比如
|
![]() |
3
2
取决于: 如果(23<=i和i<=40) 但我更喜欢右边,它读起来更自然。 |
![]() |
4
1
把条件放在右边,因为这是“自然”的地方,如果你不小心使用了,就要依靠你的编译器来生成一个警告。
|
![]() |
5
1
这真的很重要吗?如果你保持 一 约定,但究竟是将常量放在一边,还是始终使用<、<=运算符并避免使用>、>=;这取决于您自己。 当然,编译器/解释器并不重要,现代编译器应该在意外地写“set to”(=)而不是“does it equal”(==)时给出明确的警告,如中所述。 ocdecio's post . |
![]() |
6
1
答案一如既往地是“视情况而定”。在大多数情况下,把它放在右边读起来更自然,就像在OP的例子中一样。在其他情况下,尤其是检查某个内容是否在范围内的复合语句(请参见 Peter Miehle 例如),它可以走任何一条路。我认为您应该使用任何使语句更清楚的语句,任何未来的程序员发生在您的代码中。如果可读性没有明显的区别,我建议默认将其放在右边,因为这是大多数人所期望的(最不意外的原则)。正如许多人已经提到的,如果您试图在if语句中执行赋值,现在任何一个合适的编译器都会警告您(您通常可以在赋值周围加上一组括号来消除此警告)。另外,有人提到,如果没有左边的常量技巧,某些JIT或解释语言可能会使您很难找到这个问题,但是IIRC,在这种情况下,其中许多语言也会发出警告,因此,如果在运行它们时将警告视为错误,它将帮助您捕获该问题。 |
![]() |
7
0
我喜欢左侧,因为这样可以防止意外的任务:
注: 通过阅读我理解的其他答案,当使用编译语言时,这可能会给你带来麻烦。我还是喜欢使用这个,因为我的主要语言是PHP。对于编译语言,请参考其他人已经给出的答案。 |
![]() |
8
0
请始终使用<(和<=),不要使用>(或>=),并避免使用无法区分赋值和相等的语言。 规则的第一部分意味着,在您的条件下,数字以它们通常的顺序出现,最小的在左边,最大的在右边。当您的条件包含多个条件时,这是一个很好的帮助( 如 3<x&x<=14) 规则的第二部分意味着让编译器为编译器擅长的事情操心(例如,找出您键入的符号数)。 我坚定地、肯定地、肯定地做出这些断言,因为我知道这只是我的观点,没有正确或错误的答案。 当做 |
![]() |
John V · 是否存在单元测试无法发现的逻辑/流错误类型? 6 年前 |
![]() |
Beefster · 为什么ANSI颜色转义以“m”而不是“]”结尾? 6 年前 |
![]() |
Guillermo Gutiérrez · STR转换是如何工作的? 7 年前 |
![]() |
RudziankoÅ · 合并排序数组算法 7 年前 |
|
user8852560 · 构造函数中的验证和构造函数冲突 7 年前 |
![]() |
jav974 · 订购产品时寻找最佳价格组合的算法 7 年前 |
![]() |
hippietrail · 确定浮点数中前导零的数量 7 年前 |