1

我正在尝试在 Objective-C 中模拟双重调度。

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

任何想法。

4

2 回答 2

1

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

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

于 2018-05-28T19:31:58.873 回答
0

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

于 2018-06-15T15:14:07.997 回答