【发布时间】:2018-05-28 19:21:27
【问题描述】:
我正在尝试在 Objective-C 中模拟 Double Dispatch。
我知道 Objective-C 不支持函数/方法重载。但是你能效仿吗?
任何想法。
【问题讨论】:
标签: objective-c double-dispatch
我正在尝试在 Objective-C 中模拟 Double Dispatch。
我知道 Objective-C 不支持函数/方法重载。但是你能效仿吗?
任何想法。
【问题讨论】:
标签: objective-c double-dispatch
您可以像在 C++/C# 中那样使用 2 个单一调度(也称为“访问者”模式,参见 https://en.wikipedia.org/wiki/Double_dispatch#Double_dispatch_in_C++)。
或者您可以手动执行此操作,对参数进行一些运行时类型检查(请参阅isMemberOfClass)。
【讨论】:
在这个repo 中给出一个如何在Objective-C 中实现Double Dispatch 的例子
【讨论】: