Block块/Swift闭包介绍与使用

本文介绍了Block块,一种在OS X v10.6和iOS 4.0引入的功能,类似于C语言的函数,但能捕获同一作用域内的变量。接着详细阐述了Swift中的闭包实体定义,包括Object-C和Swift的语法差异。
摘要由CSDN通过智能技术生成

       Block块是随OS X v10.6和iOS 4.0一同发布并可用的功能(在这个Swift2.0都出来了的时候,不用考虑block版本是否可用的问题),其功能类似于C语言的函数。但是与C语言函数不同在于Block可以存取与之在同一个作用域的变量。

       1、Block块/Swift闭包实体定义

  • Object-C语法
            Block指针定义:
                  返回值   (^Block名字)(参数列);     如: int (^cube)(int a)

            Block实体定义:
                  ^(参数列表) {行为主体},例如: ^(int a) { return a * a * a; }
  • Swift语法
           (形参列表) -> 返回值类型,Swift中函数就是闭包,闭包是函数的一种特殊形式。闭包的几种格式为:
            1)、完整格式
                   funA( { () -> () in 
                    print("test")
                   })
            2)、无形参的写法
                   funA( {
                    print("test")
                   } )
            3)、闭包为最后一个参数
                   funA() {
             print("test")
                   }
            4)、只有闭包一个参数
              funA {
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值