【问题标题】:How to Emulate Double Dispatch in Objective-C如何在 Objective-C 中模拟双重调度
【发布时间】:2018-05-28 19:21:27
【问题描述】:

我正在尝试在 Objective-C 中模拟 Double Dispatch。

我知道 Objective-C 不支持函数/方法重载。但是你能效仿吗?

任何想法。

【问题讨论】:

标签: objective-c double-dispatch


【解决方案1】:

您可以像在 C++/C# 中那样使用 2 个单一调度(也称为“访问者”模式,参见 https://en.wikipedia.org/wiki/Double_dispatch#Double_dispatch_in_C++)。

或者您可以手动执行此操作,对参数进行一些运行时类型检查(请参阅isMemberOfClass)。

【讨论】:

【解决方案2】:

在这个repo 中给出一个如何在Objective-C 中实现Double Dispatch 的例子

【讨论】:

  • 这是一个仅链接的答案。很高兴你能总结一下它是如何工作的,这样读者就不必去 repo 中的所有文件才能找到。
猜你喜欢
  • 2012-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-10
  • 2017-10-12
  • 1970-01-01
相关资源
最近更新 更多