最佳代码风格

时间:2015-07-06 07:37:50

标签: ios objective-c macos

填充变量值的最佳方法是什么。该方法应该从NSData类型的存档中获取图片,如果出现问题则写入错误。

- (void) svg:(void(^)(NSData *imData))image ByIndex:(NSInteger)index error:(NSError * __autoreleasing *)error;

- (void) svg:(NSData **imData)image ByIndex:(NSInteger)index error:(NSError * __autoreleasing *)error;

- (NSData *) imageByIndex:(NSInteger)index error:(NSError * __autoreleasing *)error;

或其他变体?

1 个答案:

答案 0 :(得分:1)

如果是同步的话:

- (NSData *)dataForImageAtIndex:(NSInteger)index error:(NSError * __autoreleasing *)error;

或者,如果它是异步的:

- (void)requestDataForImageAtIndex:(NSInteger)index completionHandler:(void(^)(NSData *data, NSError *error)completionHandler;

或者,如果您想为Swift互操作性指定可空性:

- (NSData * __nullable)imageDataForIndex:(NSInteger)index error:(NSError * __nullable __autoreleasing * __nullable)error {

- (void)requestDataForImageAtIndex:(NSInteger)index completionHandler:(void (^ __nonnull)(NSData * __nullable data, NSError * __nullable error))completionHandler