这似乎暗示everyone知道“Non Fragile ABI”是什么 - 考虑到它在 Xcode 中被引用的频率和事实性质。例如...
下标需要接口节点的大小,这在非脆弱 ABI 中不是恒定的
or
选择要使用的 Objective-C ABI 版本。可用版本有 1(旧版“脆弱”ABI)、2(非脆弱 ABI 1)和 3(非脆弱 ABI 2)。
那是说...什么是非脆弱 ABI?(为什么不把它称为不太抽象/解释得更清楚的东西?)
非脆弱ABI是指无需重新编译所有子类即可向类添加实例变量的能力。
IE。在 v1 中(确实没有真正的 ObjC 版本),如果 Apple 要将实例变量添加到 NSView(在 Cocoa 上,32 位),那么 NSView 的每个子类(或子类的子类)都必须是重新编译,否则它们会爆炸。 v2 和 v3 修复了这个问题。
它的解释是详细信息请参阅此博客文章.
您所引用的文档位于 llvm/clang 手册页中。对于大多数开发人员来说,大多数时候这是一个非常罕见的地方;除非您正在编写直接驱动编译器的 Makefile,否则没有太多理由阅读该页面(除非探索 - 当然,这非常有教育意义)。
它是按照 Unix 手册页的风格编写的,毫不奇怪,有点……迟钝。对于几乎所有任务,最好坚持使用更高级别的文档。 IE。 Xcode 构建设置文档总体来说没有那么迟钝。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)