美文网首页
Swift中defer的使用

Swift中defer的使用

作者: CicadaJZ | 来源:发表于2022-07-12 17:24 被阅读0次

defer语句在代码块(方法、闭包等,可以理解为大括号括起来的代码)作用域退出之前执行。
一个代码块允许有多个defer,多个defer的执行顺序从后向前。
defer的作用范围不能简单的看成方法,而是代码块。

使用场景

资源在用完后需要释放,在开始用到资源的时候就调用defer去释放,避免忘记释放资源。
加锁解锁,在加锁后就调用defer去解锁,避免忘记解锁。
处理代码块结束前的一些重复操作,比如网络请求数据的回调,成功和失败都需要回调,而且可能回调都会涉及一堆代码,使用defer既可以解决代码冗余,又可以解决忘记回调的问题。

相关文章

  • 读喵神文章有感

    昨天读了喵神的《关于 Swift defer 的正确使用》,对defer有了新的认识。之前在自学swift中也看到...

  • Swift中defer的使用

    defer:defer中的代码将延迟至当前作用域结束之前执行注意:必须有执行到defer,才会触发defer。如果...

  • Swift中defer的使用

    defer语句在代码块(方法、闭包等,可以理解为大括号括起来的代码)作用域退出之前执行。一个代码块允许有多个def...

  • swift-defer

    来源自喵神的博客:关于 Swift defer 的正确使用 defer简介 从语言设计上来说,defer 的目的就...

  • Swift 中 defer 的介绍与使用场景

    Swift 中 defer 的介绍与使用场景 用defer语句在即将离开当前代码块时执行一系列语句。该语句让你能执...

  • Swift之Defer

    Swift2.0中加入了defer新语法声明。defer译为延缓、推迟之意。那么在Swift2.0中它将被应用于什...

  • 用OC写一个defer

    defer defer是Swift中比较常用的一种语法,defer中的代码将会在当前的代码块结束之后调用。正如文档...

  • swift中的defer使用场景

    延迟 个人理解类似闭包,会延迟执行,但只要执行了defer定义的代码就一定会执行。 执行顺序 defer的位置越靠...

  • [Swift2.0系列]Defer/Guard 基础语法

    2018-Read-Record 记录我的2018学习历程 1.Defer Swift2.0中加入了defer新语...

  • Swift defer & guard

    2019-01-29Swift defer 简单解答 1. defer是什么? The defer keyword...

网友评论

      本文标题:Swift中defer的使用

      本文链接:https://www.haomeiwen.com/subject/lreabrtx.html