前言
?
在不同的平台,有不同版本的OC runtime。
?
旧的和现在的版本
?
有两个版本的OC runtime——“旧版”和“现在版”。现在版就是OC-2.0并包含了许多新特性。旧版本的runtime的编程接口就是OC-1;现在版本的runtime全部接口参见 Objective-C Runtime Reference 。
最值得注意的新特性是,现在版本的实例变量是“不脆弱的”:
- 在旧版本runtime,如果我们改变一个类的实例变量的布局,我们必须重新编译所有继承自它的类。
- 在现在版本runtime,如果我们改变一个类的实例变量的布局,我们不需要重新编译所有继承自它的类。
另外,现在版本的runtime支持为声明的属性做实例变量的synthesis(参见Objective-C Programming Language)。
?
平台
?
iPhone应用和OSX 10.5版本的64-位编程使用现在版本的runtime。