merge中有两种方法:

- (RACSignal *)merge:(RACSignal *)signal;
+ (RACSignal *)merge:(id<NSFastEnumeration>)signals;

当我写RACSignal时,它引用静态方法:
class func merge(signals: NSFastEnumeration!) -> RACSignal!

如何引用对象方法?我不能写RACSignal.merge,因为它在wrapper类中,self.merge不是self

最佳答案

由于swift中的方法是通用的类函数,编译器必须决定选择哪个重载。
要引用实例的merge方法,需要指定它的确切类型:
let instanceMerge: RACSignal -> RACSignal! -> RACSignal! = RACSignal.merge

关于swift - 来自不同类别的引用方法作为 curry 函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30980463/

10-10 15:40