最简单的IOS Block与协议 block作为函数参数的使用

本文详细介绍了如何在函数中使用Block作为参数及返回值的方法,包括定义、调用技巧等,并对比了Block与普通函数的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   1. block是1个数据类型.能不能作为函数的参数呢? 当然是可以的.

 
 

   2. 如何为函数定义block类型的参数?

      a. 就是在小括弧中声明1个指定格式的block变量就可以了.
      b. 可以使用typedef简化定义,这样看起来就不会晕了.
 
 

   3. 如何调用带block参数的函数呢?

 
      a. 如果要调用的函数的参数是block类型的,那么要求在调用的时候传入1个和形参block要求的代码段.
 
      b. 调用的时候,可以先讲代码段存储到1个block变量中,然后再传递这个block变量
         也可以直接将符合要求的代码段写在小括弧中传递.
 
      c. 小技巧. 通过Xcode提示可以快速的生产block代码段的框架.
 
 

   4. 将block作为函数的参数可以实现什么样的效果?

 
      可以将调用者自己写的1段代码 传递到 函数的内部去执行.
 

 

   5. block也可以作为函数的返回值.

 
      当将block作为函数的返回值的时候,返回值的类型就必须要使用typedef定义的短类型.
 


  

   6. block与函数

 
      相同点: 都是封装1段代码.
 
      不同点:
      1). block是1个数据类型.函数是1个函数.
      2). 我们可以声明block类型的变量  函数就只是函数. 
      3). block可以作为函数的参数. 而函数不能直接作为函数的参数.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值