我刚开始学习Obj-C而且我有点困惑。我在Lynda.com上观看的视频是用Xcode 4创建的,但是有很多不同之处我觉得很难相信所有这些视频都发生在2点版本中。例如:
在视频中你可以写:
@property NSString * myString
它会很好,但现在在4.2它会抛出一个错误,除非你写的东西:
@property (nonatomic, retain) NSString * myString
此外,默认情况下,实现代码中不再有init或dealloc方法,并且NSAutoReleasePool的实现方式完全不同。是什么赋予了?
虽然我无法保证此列表是详尽无遗的,但您在网上发现的差异是:
我个人对主要区别的看法是:
有更多的差异,但这些是我认为最重要的 - 个人我很少使用自动释放池,如果我理解正确,新语法不会改变功能。
如果您使用“自动引用计数”选项“打开”创建项目,则不会有任何init或dealoc方法。
在创建项目时 检查使用自动参考计数。
创建项目时,可以选中“使用自动引用计数”选项。如果你检查这个,那么就不会有任何init或dealloc方法,因为Xcode会自动进行引用计数。