<分区>
Possible Duplicate:
How to check for equals? (0 == i) or (i == 0)
Is there a difference between i==0 and 0==i?
我多次看到人们将 if(condition)
用作 if(0==x)
而不是 if(x==0 )
。据说这是一个很好的做法,但有人可以解释为什么会这样吗?这有什么区别?在我看来,它反而降低了可读性。
<分区>
Possible Duplicate:
How to check for equals? (0 == i) or (i == 0)
Is there a difference between i==0 and 0==i?
我多次看到人们将 if(condition)
用作 if(0==x)
而不是 if(x==0 )
。据说这是一个很好的做法,但有人可以解释为什么会这样吗?这有什么区别?在我看来,它反而降低了可读性。
最佳答案
它降低可读性的事实纯粹是主观的。 (虽然我也有同感,但那是因为我处理 x==0
的次数比其他方式多,所以我已经习惯了)。
这样做是为了防止意外赋值:
if(0=x)
会产生编译错误,
if(x=0)
不会。
关于c++ - 使用 if(...) 时,为什么这被认为是一种良好的编程习惯?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12561810/