Block
来源:互联网 发布:神马快递单打印软件 编辑:程序博客网 时间:2024/06/07 19:48
Block
objective-c中可以用block代替delegate使用,更简洁灵活
一、相关概念
声明:对编译器说:这里我有一个函数叫function() 让编译器知道这个函数的存在。定义:具体就是函数的实现过程 写明函数体。调用:调用一个函数 -_-|||
二、 形式
一、带参数无返回值
//=左边:声明 =右边:定义 void(^blockFunc)(int)=^(int n){ NSLog(@"选择了什么..."); } //调用 blockFunc(6);
二、带参数返回值
//=左边:声明 =右边:定义 int (^blockFunc)(int,int)=^(int n1,int n2){ return n1+n2; } //调用 NSLog(@"%d",blockFunc(100,20));
三、不带参数和返回值
void(^blockFunc)()=^(){ NSLog(@"no parameter no return"); };
四、typedef 定义block 类型 (和指向函数的指针很像)
//blockFunc 是typedef定义的别名 typedef int(^blockFunc)(int,int); //相当于声明 int(^block1)(int,int);int(^block2)(int,int); blockFunc block1,block2; //定义 block1=^(int a,int b){ return a-b; }; block2=^(int a,int b){ return a+b; };
}
三、应用
(未完待续)
1 0
- Block
- block
- Block
- block
- block
- block
- block
- block
- block
- Block
- block
- Block
- Block
- Block
- Block
- block
- Block
- block
- C/C++: Inline function, calloc vs malloc
- 编写创建二叉树的算法
- SDUT 3068 为了相同的前缀-方程式计算 (数学) -- 解题报告
- Easyui datagrid行内【添加】、【编辑】、【上移】、【下移】
- 拦截聊天记录--Hook技巧简介【原创】
- Block
- 使用Mybatis-Generator自动生成Dao、Model、Mapping相关文件(转)
- Elevator
- 构造哈夫曼树的算法
- Spark学习笔记5-隐式转换,隐式参数,隐式类
- 第十章编程练习(3)
- 在Mac系统下安装mongodb两种方式
- 安卓项目中 一些常见 API接口总结
- POJ 2533 3903(最长递增子序列)