Objective c 具有不同方法签名的多态性

Objective c 具有不同方法签名的多态性,objective-c,polymorphism,Objective C,Polymorphism,我有一组类(比如验证规则)。每一个都返回一个true或false 我使用id并为每个类调用一个方法签名,得到的结果允许我动态创建验证规则 工作得很好,直到 我有一个新类,它需要一个额外的参数来进行验证 处理这个问题的最好方法是什么 修改其他每一个类的方法签名,以获取它们不需要的参数?最合适的做法可能是将传递到具有变量配置文件的对象中的参数抽象出来 当然,更简单地说,Objective-C确实允许变量参数列表,非常类似于C: void method(int a, ...) // in C

我有一组类(比如验证规则)。每一个都返回一个true或false

我使用id并为每个类调用一个方法签名,得到的结果允许我动态创建验证规则

工作得很好,直到

我有一个新类,它需要一个额外的参数来进行验证

处理这个问题的最好方法是什么


修改其他每一个类的方法签名,以获取它们不需要的参数?

最合适的做法可能是将传递到具有变量配置文件的对象中的参数抽象出来

当然,更简单地说,Objective-C确实允许变量参数列表,非常类似于C:

void method(int a, ...)     // in C
- (void) method:(id) firstObject, ...  // in ObjC

苹果在这个问题上做得很好。

是的,将变量放入NSDictionary可以让不同的类选择他们感兴趣的内容。