使用if(...)时,为什么这被认为是一个很好的编程习惯?

h4c*_*k3d 0 c c++ programming-languages

可能重复:
如何检查等于?(0 == i)或(i == 0)
i == 0和0 == i之间有区别吗?

我见过很多次人们使用if(condition)as if(0==x)而不是if(x==0).它被认为是一种很好的做法,但有人可以解释为什么这样做?它有什么不同?相反,它在我看来降低了可读性.

Luc*_*ore 10

它降低可读性的事实纯粹是主观的.(我也有同样的感觉,但那是因为我一直在处理x==0比其他方式更多,所以我已经习惯了).

这是为了防止意外分配:

if(0=x)
Run Code Online (Sandbox Code Playgroud)

会产生编译错误,

if(x=0)
Run Code Online (Sandbox Code Playgroud)

惯于.