klk*_*ens 1 comparison multilingual
我已经看过这个,但从来没有听说过为什么......这真的适用于任何语言,而不仅仅是C#或VB.NET或Perl等等.
比较两个项目时,有时"检查"值放在左侧而不是右侧.从逻辑上讲,您首先列出变量,然后列出您要比较的值.但我已经看到了相反的情况,其中"常数"首先列出.
这种方法有什么(如果有的话)增益?
所以代替:
if (myValue > 0)
Run Code Online (Sandbox Code Playgroud)
我见过:
if (0 < myValue)
Run Code Online (Sandbox Code Playgroud)
要么
if (Object.GimmeAnotherObject() != null)
Run Code Online (Sandbox Code Playgroud)
替换为:
if (null != Object.GimmeAnotherObject())
Run Code Online (Sandbox Code Playgroud)
有什么想法吗?
TIA!凯文
一些开发人员将常量放在左边
if(0 = myValue)
Run Code Online (Sandbox Code Playgroud)
这是因为您将从编译器中获得错误,因为您无法为0分配值.相反,您必须将其更改为
if(0 == myValue)
Run Code Online (Sandbox Code Playgroud)
这可以防止在打字之后进行大量痛苦的调试
if(myValue = 0)
Run Code Online (Sandbox Code Playgroud)
是完全合法的,但很可能是你的意思
if(myValue == 0)
Run Code Online (Sandbox Code Playgroud)
第一选择不是你想要的.它将巧妙地改变你的程序,并引起各种令人头疼的问题.希望澄清一下!