RxSwift_源码解析导读

exec(v1: 10, v2: 20){
    (v1, v2) -> Int in
    return v1 + v2
}

相信刚刚接触Swift语言的人,一定也有不少人跟我一样有疑惑:这段代码写的是什么鬼?
虽然不懂,但很重要,对应接下来RxSwift源码解读中,可以经常看到
跟我一样有疑惑的请转看Swift 闭包表达式

对于Swift闭包函数的写法了解之后,请看下面创建序列Observable方法的代码

public static func create(_ subscribe: @escaping (RxSwift.AnyObserver<Self.Element>) -> RxSwift.Disposable)
 -> RxSwift.Observable<Self.Element>

对于这个方法的解读:
第一:这是类方法,一个参数subscribe,返回值是RxSwift.Observable<Self.Element>
第二:参数subscibe,是一个函数类型,需定义一个闭包函数

那么这里定义一个闭包函数类型的参数subscibe有什么用了?
(弄明白这点,对于看RxSwift源码很有帮助)
对于方法定义一个闭包函数类型的参数,小编理解是这样的
内部调用(闭包函数),外部定义
内部传值给闭包参数
闭包函数的作用:看返回值

对于RxSwift源码的解读,请看下列yahibo写的系列文章,对本人很有帮助,分享给大家

RxSwift核心源码探索
RxSwift-map源码解析
RxSwift特征序列

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容