黑马程序员---Block
来源:互联网 发布:淘宝小号怎么注册 编辑:程序博客网 时间:2024/06/05 15:02
一、Block
1.block是一种数据类型,block的标志^;
2.block封装了一段代码,可以在任何时候执行;
3.block可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值;
4.block和函数:
- 都可以保存(封装)一段代码;
- 有形参,有返回值;
- 调用方式一样;
- 函数:把一段代码封装到函数中,在某一时刻调用函数,在编译之前代码是固定、确定的;
- block:程序运行时保存一段代码,程序运行过程中凭空产生一段代码保存起来。
1.block的定义:
- 返回值类型 (^block对象名) (形参类型, ……) = ^(实参类型 变量名, ……) {
};
2.block内部可以访问外面的变量,默认情况下,block内部不能修改外面的局部变量;
3.给外面局部变量加上__block关键字,这个局部变量就可以在block内部修改。
三、block和函数指针对比
1.定义函数的指针:
- 返回值类型 (*函数名) ();
- 返回值类型 (^block对象名) (形参类型,……);
- (*函数名) (实参,……);
4.调用block:
- block对象名 (实参,……);
四、Block的赋值
1.在声明的同时定义变量,然后赋值:
- 返回值类型 (^block对象名) (形参类型, ……) = ^(实参类型 变量名, ……) {
};
2.也可以先用typedef先声明类型,再定义变量进行赋值:
- typedef 返回值类型 (^类型名) (形参类型, ……);
- 类型名 变量名 = ^(实参类型 变量名, ……) {
- return 变量表达式;
};
1.如何定义block变量;
2.如何利用block封装代码;
3.block访问外部变量;
4.利用typedef定义block类型。
0 0
- 黑马程序员---block
- 黑马程序员---Block
- 黑马程序员 block、protocol
- 黑马程序员---oc block
- 黑马程序员一block
- 黑马程序员-----block
- 黑马程序员-------Block
- 黑马程序员_OC_ARC,block,protocol
- 13.黑马程序员-block语法
- 黑马程序员---block的使用
- 黑马程序员——block
- 黑马程序员-block和protocol
- 黑马程序员--OC--block数据类型
- 黑马程序员 -- OC 语言 Block
- 黑马程序员---Objective-C Block
- 黑马程序员--autorelease和Block
- 黑马程序员 oc随机 block
- 黑马程序员-block使用细节
- Download模块 (十七)
- Centos安装CodeBlocks
- Genetic Algorithm遗传算法学习
- hdu 1540 线段树+区间合并
- 护眼的RGB值
- 黑马程序员---Block
- 1.7 动画
- Android照片墙完整版,完美结合LruCache和DiskLruCache
- 使用英特尔® 编译器和 GNU* gcc 创建 x86 和 ARM* APK
- getResourceAsStream 读取配置文件
- 测试std::sort 和std::qsort 的性能, 修改编译器栈大小
- linux使用hostapd+dnsmasq管理多张网卡,搭建dns服务器,并发射wifi热点(支持360wifi等等)
- 安卓支付宝抢红包脚本软件
- Unity* 原生 X86 支持使Square Enix的Hitman GO*卓尔不凡