据苹果称:

根据维基百科:

现在,我正在研究 dependency injection 框架: Typhoon 并且当我打开 Swift 的示例项目时,所有继承自 Objective-C 类的类中的所有类都包含以下修饰符:

public dynamic func weatherReportDao() -> AnyObject {
    return TyphoonDefinition.withClass(WeatherReportDaoFileSystemImpl.self)
}
我以为我遗漏了一些东西,但我不明白 多态操作(方法或函数)在哪里在运行时调用 在这里。
这里 动态调度 的目的是什么?

最佳答案

您的问题的答案在这篇文章中得到了解决:

https://github.com/appsquickly/typhoon/wiki/TyphoonAssembly

基本上在运行时,Typhoon 框架将用它自己的例程替换您的方法,该例程实现框架的功能并调用您的方法来执行您为其定义的任何工作。

为了让框架能够替换方法,必须动态调度方法。

关于ios - Swift 函数中的动态修饰符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29686506/

10-12 22:38