条件样式:if(0 == resultIndex)vs if(resultIndex == 0)

MrG*_*les 1 c#

我们大多数人写的条件如下:

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

...但偶尔我会遇到一些人写作:

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

......有趣的是,这些人一直是作家,而且看起来非常热门的编码员.

那么为什么有些人选择'倒退'风格呢?背后有一些历史吗?Readabililty?


重复:为什么人们经常在C#中看到"null!= variable"而不是"variable!= null"?.

Rik*_*ood 7

它是来自C的遗产,其中常见的错误是写入

if (x = 0) {...}
Run Code Online (Sandbox Code Playgroud)

如果你教会自己反过来编写这些测试,那么编译器会在你输入==错字时抱怨,而不是默默地添加一个错误.


Eoi*_*ell 6

虽然我似乎无法找到Dup,但之前已经多次询问过这个问题.

从本质上讲,这种风格是C的宿醉,这是一个常见的错误

if (c == 5) //Comparison
Run Code Online (Sandbox Code Playgroud)

if (c = 5) //Assignment
Run Code Online (Sandbox Code Playgroud)

在后一种情况下,编译不会抱怨所以人们这样写它是为了减少这种情况发生的可能性

if (5 == c) 
Run Code Online (Sandbox Code Playgroud)


归档时间:

查看次数:

634 次

最近记录:

13 年,4 月 前