【发布时间】:2011-06-16 02:21:32
【问题描述】:
假设object是NSObject的一种,下面的if语句是等价的,但是我应该使用哪种样式呢?
if (object) {
// ...
}
或
if (object != nil) {
// ...
}
【问题讨论】:
-
为这个问题展开了战争。我倾向于后者。
标签: objective-c coding-style if-statement
假设object是NSObject的一种,下面的if语句是等价的,但是我应该使用哪种样式呢?
if (object) {
// ...
}
或
if (object != nil) {
// ...
}
【问题讨论】:
标签: objective-c coding-style if-statement
正如你所说,它们是等价的。于是……
我应该使用哪种样式?
你想要哪个。
【讨论】:
在它们做同样的事情的意义上,它们是等价的。但我认为第二条语句使代码更具可读性。当一个人读到这行时,他们会明白这意味着“如果对象没有指向任何东西”。
记住 Knuth 的格言:编程语言是一种以人类可读的形式向机器传递指令的方式...
【讨论】: