可能的重复:
如何检查是否相等? (0 == i) 或 (i == 0)
为什么在 C# 中经常看到“null!=variable”而不是“variable!=null”?
我一直在查看一些奇怪的教程以及一些 DirectX 代码,并注意到许多经验丰富的 C++ 程序员都按以下方式编写表达式:
(<constant> == <variable>)
而不是我的传统智慧似乎更喜欢:
(<variable> == <constant>)
E.g. if (NULL == ptr)
而不是if (ptr == NULL)
。如果没有其他原因选择前者,我更喜欢第二种选择,我的原因是该变量似乎是表达式的“接收”端。
但我怀疑前者是用来避免无意中将常量的值分配给变量的=
而不是==
。那是正确的吗?
过去就是这样,是的。当然,现在几乎所有编译器都会对中的赋值发出警告if()
条件,所以只有那些经常压制警告的人才有优势。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)