我知道当将类的方法移动到扩展时不应该存在运行时性能差异(如Swift extensionare extensions bad for performance in swift?中所回答)。
但是,通过将必需的private属性更改为fileprivate来访问方法(移动到与类相同的文件中的扩展名),我找不到有关运行时性能是否有任何差异的文档。
是否有人知道绩效差异?(我不关心编译时间差异,我认为在本例中不存在这种差异,只关心运行时。)

最佳答案

为什么会有这样的区别?这些隐私条款大多只是编译器的注释,以禁止某些类型的访问。
运行时的重要收获来自于使用整个模块优化和/或声明类。这允许关闭动态调度。

10-05 22:58
查看更多