一:在ios,blocks是对象,它封装了一段代码,这段代码可以在任何时候执行。Blocks可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值。它和传统的函数指针很类似,但是有区别:blocks是inline运行时使用的,并且它对局部变量是只读的;而在c语言中函数指针是在编译时就运行。

int (^myBlock)(int ,int) = ^(int a, int b){return a ;};

等号左边表示block的定义 ,右边表示 block的实现体

左边 int 表示 返回值类型  myblock 表示创建的block对象  传入两个int行的参数

右边表示 传入参数a和b;大括号里面表示block代码块的实现

下面时三种类型的举例说明:

1:无返回值,无参数

输出结果为:

2 :无返回值 有参数

输出结果为:

类型三:有返回值,有参数

输出结果为:

这就是三种block形式的定义与使用 之后再给大家总结block的回调。

转载于:https://www.cnblogs.com/hlh--123/p/5021325.html

iOS开发 Block的用法相关推荐

  1. iOS开发宝典:String用法大全

    本文转载至 http://mobile.51cto.com/iphone-395171.htm 新手们还在等什么?这是一本属于你的iOS开发"字典",在这里你可以查到字符串.数组. ...

  2. iOS开发—block介绍

    - (void)viewDidLoad {[super viewDidLoad];NSLog(@"我在玩手机");NSLog(@"手机没电了");[self c ...

  3. IOS开发 Block的学习

    苹果公司正在大力推广Block块语法的使用,据说Block会迟早取代一般协议代理的使用. Block最大的作用是函数回调,简化代码. 在ios中,将blocks当成对象来处理,它封装了一段代码,这段代 ...

  4. iOS开发 -------- Block技术中的weak - strong

    一 Block是什么? 我们使用^运算符来声明一个Block变量,而且在声明完一个Block变量后要像声明普通变量一样,后面要加; 声明Block变量 int (^block)(int) = NULL ...

  5. iOS开发 Block声明方式

    1.写在方法里作为局部变量 returnType (^blockName)(parameterTypes) = ^returnType(parameters) {...}; returnType是返回 ...

  6. iOS开发 ☞ Cornerstone (SVN)用法详解

    一.SVN地址变更,无法查看新日志 报错: could not contact repository to read the latest log entries 解决方法:打开终端,输入:defau ...

  7. IOS开发问题索引(四)

    全系列文章索引: IOS开发问题索引(一) IOS开发问题索引(二) IOS开发问题索引(三) IOS开发问题索引(四) IOS开发问题索引(五) IOS开发问题索引(六) IOS开发问题索引(七) ...

  8. iOS开发-由浅至深学习block

    作者:Sindri的小巢(简书) 关于block 在iOS 4.0之后,block横空出世,它本身封装了一段代码并将这段代码当做变量,通过block()的方式进行回调.这不免让我们想到在C函数中,我们 ...

  9. iOS开发笔记(二):block循环引用

    写这篇文章的缘由是第一次面试时被问到了block循环引用的问题,当时回答的不是很好,首先要明确的是,block是否用copy修饰决定不了循环引用的产生,在此再一次进行补强,有不对的地方还请多多指教. ...

最新文章

  1. 6.11 将分割数据转换为多值IN列表
  2. java C语言内存占用_使用Cgroup限制Java使用的内存量-思路
  3. 汇编语言的Hello World
  4. java学习类的笔记
  5. 函数节流与防抖的实现
  6. 远程连接CentOS的MySQL报错:Can't connect to MySQL server on 'XXX' (13)
  7. python压缩文件不带根路径_python 压缩文件(解决压缩路径问题)
  8. 第三十五期:AI核心难点之一:情感分析的常见类型与挑战
  9. 代数学笔记3: 分裂域
  10. mysql 查询判断手机号
  11. 全国计算机二级考试c语言指针,全国计算机等级考试二级C语言指针检测试题.doc...
  12. 5.PHP 命令行模式
  13. dbcc checkdb 200g 要多久_东丽区无人驾驶学多久,放心省心_石家庄北方汽修学校
  14. Unity3D脚本编程读书笔记——第1章 Hello Unity 3D(认识Unity3D游戏引擎)
  15. 创 业 项 目 计 划 书 样 本
  16. 12面魔方公式图解法_五魔方Megaminx( 正十二面体魔方)解法教程(图)
  17. 建模实训报告总结_BIM建模实习报告,BIM实训总结1500字
  18. 百度地图level对应距离(比例尺级别对应的多少米)
  19. 非常好的产品研发管理文章,后面问题回答的很精彩(转)
  20. Win10 无法加载操作系统,因为无法验证文件或某个xx数字签名 蓝屏错误代码0xc0000428

热门文章

  1. c语言退出程序命令_C语言#error命令,阻止程序编译
  2. 图解SQL基础知识,小白也能看懂的SQL文章!
  3. 演进实录|不同阶段的企业如何搭建监控体系?
  4. 冀教版五年级计算机教学计划,冀教版五年级科学教学计划
  5. Mysql多表查询(案例1)
  6. java内部float,Java中的float是什么?
  7. python anaconda下载包_【Python开发】anaconda3 安装python包
  8. 你绝对能懂的“机器学习”(四)
  9. 分类评分函数 score function
  10. 【每周NLP论文推荐】 掌握实体关系抽取必读的文章