在Apple的例子中,我看到了这个:
myController *controller = [viewControllers objectAtIndex:page];
if ((NSNull *)controller == [NSNull null]) {
controller = [[myController alloc] initWithPageNumber:page];
[viewControllers replaceObjectAtIndex:page withObject:controller];
[controller release];
}
我对这一行非常感兴趣:
if ((NSNull *)controller == [NSNull null]) {
如果我愿意这样做,我会检查是否为零。他们为什么这样做太复杂了?那到底是做什么的?对我来说,看起来他们正在将控制器对象转换为NSNull,然后检查它是否与NSNull中的null相同。
据我所知。 nil表示“无对象”,null表示“无”。请帮我看清楚图片吧!