更正Objective C的根类?

dec*_*rig 2 objective-c

我在网上找到了关于ObjC的两个不同根类的参考资料,无论是objc/Object.h或者Foundation/NSObject.h.它们需要不同的编译器标志(-lobj相比之下-lobjc -framework Foundation,并且有不同的选择器用于初始化和释放对象.NSObject是替代品,还是它们有不同的应用程序?显然NSObject.h对NextStep类型的东西更好,但确实Object.h有更好的优势,可以使它更好在某些情况下?

FWIW,来自comp.lang.objective-c 的更新的FAQ似乎表明它NSObject.h是正确的; 一个旧版本提到Object.h

Jas*_*her 5

我对这种情况的理解是Objective-C有两个运行时库.Apple的库使用NSObject,而GNU库使用Object.如果您正在为Apple平台开发,请使用其运行时.如果您正在为非Apple平台开发,则使用另一个.