【发布时间】:2012-04-18 19:18:55
【问题描述】:
我正在阅读一本关于 Objective-C 的书,作者说如果没有为局部变量赋值,它们将被设置为 nil,但静态变量将被设置为零。所以,我设置了int a 并没有给它赋值。然后NSLog(@"%i", a) 显示它,a 显示为零。我对此有点困惑,我想知道是否有人可以为我澄清一下?
【问题讨论】:
-
如果这本书是你写的那样,我建议把它扔进垃圾桶,换一本别的书。 Nil 和 0 实际上是同义词。局部变量(ARC 下的对象引用除外)将是未定义的。静态变量和实例变量将是 nil/zero/NULL/Nil,它们是同义词。
-
同意bbum;这太可怕了。这本书是什么鬼?另见:stackoverflow.com/questions/9726817/…
标签: objective-c instance-variables null static-variables