[iOS]Swift-逃逸闭包

本文探讨了Swift中的逃逸闭包,详细解释了逃逸闭包的定义和特点,即闭包作为参数传递给函数并在函数返回后执行。通过@escaping关键字来标识这样的闭包,并通过举例说明在Swift标准库中如"dataTask"异步请求方法中逃逸闭包的应用。
摘要由CSDN通过智能技术生成

逃逸闭包必须满足下面2个条件:
* 1、闭包作为一个参数传到函数中
* 2、闭包在函数返回之后才执行
需要在参数前面加入标注: @escaping,用来指明这个闭包是允许“逃逸”出这个函数的。
注意:将一个闭包标记为 @escaping 意味着你必须在闭包中显式地引用

import UIKit

/** 逃逸闭包满足下面2个条件:
 *  1、handle闭包作为一个参数传到函数payRequest中
 *  2、并且handle闭包在函数返回之后才执行
 *  需要在参数前面加入标注: @escaping,用来指明这个闭包是允许“逃逸”出这个函数的
 *  注意:将一个闭包标记为 @escaping 意味着你必须在闭包中显式地引用 self
 */

func payRequest(handle:@escaping (Data?, URLResponse? ,Error?) -> Void) {
    let urlStr = URL
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值