我在Objective-C中有一个函数.如果发生错误,此函数始终返回值,事件:
-(NSString *)test:(NSError **)error;
我在Swift1中覆盖它如下,这样我仍然可以同时得到值和错误.
override func test(error: NSErrorPointer) -> String { var error: NSError? let result = super.test(&error) ... }
但是现在在swift2中,我只能覆盖像这样的函数
override func test() throws -> String { }
我这样做是因为我需要覆盖AFNetworking中的一个函数.需要返回值和错误.
- (id)responSEObjectForResponse:(NSURLResponse *)response data:(NSData *)data error:(NSError *__autoreleasing *)error;