据我所知,我们可以使用函数
func saveImage(imageType:imageType, thumb: UIImage, completion: CompletionHandler)
像这样:
imageSaver.saveImage(someType, thumb:image) { in
...
}
但实际上,从Objective-C来看,我认为块是一个参数,也许我应该这样使用它:
imageSaver.saveImage(someType, thumb:image, { in
...
})
作为Objective-C编码器,还有一个对我来说很有趣的地方,它将参数传递给一个函数:
所以如果我想给保存图像函数添加一些参数,比如
func saveImage(someInt:UInt, imageType:imageType, thumb: UIImage, completion: CompletionHandler)
那么我应该通过指定CCD_ 1名称来调用它。
imageSaver.saveImage(10, imageType:someType, thumb:image) { in
...
}
我想在Swift中,我们会跳过函数的定义
Objective-C示例:
- (void)saveImage:(UIImage *)image withParams:(NSDictionary *)params
所以withParams
有时可以在函数开始时跳过,正如我所理解的,这对我来说并不明显)
是的,这是闭包和函数之间区别的部分目的。它并不是真正在函数之外定义一个块,而是为了提高可读性而添加一些语法糖。
我建议阅读以下内容:关闭文档