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) -> RxSwift.Disposable)
 -> RxSwift.Observable

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

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

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

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

你可能感兴趣的:(RxSwift_源码解析导读)