zoukankan      html  css  js  c++  java
  • Swift 逃逸闭包

    一般在定义网络请求框架时,会声明成功闭包,失败闭包。用来回调返回的数据给调用者。

    成功闭包,失败闭包当然是作为请求方法的参数,这时候会报错,因为这种闭包必须声明为逃逸闭包。

    也就是在闭包类型前加 @escaping

    func httpRequestSendDeviceTokenWithOld(oldToken : String,
                                               platformType : NSNumber,
                                                  succed : @escaping HttpRequestCompleteBlock,
                                                  faild : @escaping HttpRequestFaildCompleteBlock) {
            
            WLFNetWorkManager.sharedInstance.post(USER_REGISTER_URL, parameters: ["oldToken":oldToken,
                                                                                  "deviceToken":"",
                                                                                  "platformType":2,
                                                                                  "userId":0], progress: { (progress) in
                
            }, success: { (task, responseObject) in
                
                succed(responseObject!)
                
            }) { (task, error) in
                
                faild(error)
            }
        }
    当一个闭包作为参数传到一个函数中,但是这个闭包在函数返回之后才被执行,我们称该闭包从函数中逃逸. 当你定义接受闭包作为参数的函数时,你可以在参数名之前标注 @escaping,用来指明这个闭包是允许“逃逸”出这个函数的
    
    作者:li_礼光
    链接:https://www.jianshu.com/p/5701f4e8eb29
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
    此文仅为鄙人学习笔记之用,朋友你来了,如有不明白或者建议又或者想给我指点一二,请私信我。liuw_flexi@163.com/QQ群:582039935. 我的gitHub: (学习代码都在gitHub) https://github.com/nwgdegitHub/
  • 相关阅读:
    POJ 1149
    最小费用最大流邻接表模板
    poj 1724 最短路+优先队列(两个约束条件)
    hdu 4786 最小生成树与最大生成树
    hdu 4081 最小生成树变形
    poj 3228 二分+最大流
    poj 2516 最小费用最大流
    hdu 3605 二分图多重匹配
    hdu 3605 最大流sap+二进制思想(啊啊)
    hdu 3572 最大流判断满流
  • 原文地址:https://www.cnblogs.com/liuw-flexi/p/12869541.html
Copyright © 2011-2022 走看看