我是一名经验丰富的程序员,因此有点尴尬地问这个问题,但无论如何都决定这样做.
我正在阅读这本书,并且还看到了网络中的各种示例,其中比较操作中的参数顺序被反转,我想知道是否有理由,或者只是因为它看起来"很酷"并且确切地说一样.
例:
我会编码:
if(bool_variable == YES)
Run Code Online (Sandbox Code Playgroud)
我在本书和各种例子中看到过
if(YES == bool_variable)
Run Code Online (Sandbox Code Playgroud)
解释吗?
万分感谢!
有些人喜欢yoda条件,因为他们可以帮助你找到你不小心输入的错误=
而不是==
.例如:
if (var = YES)
Run Code Online (Sandbox Code Playgroud)
会编译,但可能不会按你想要的方式工作.反过来写它:
if (YES = var)
Run Code Online (Sandbox Code Playgroud)
将导致编译时错误.我个人不喜欢这种结构,但对于他自己的每一种,我猜.