黑马程序员_OC基础09_block
2014-04-10 09:19
204 查看
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
一、概念
block是一种基本数据类型
二、作用
block可以封装一段代码,在任何时候执行
三、使用方法
1、定义block
2、用typedef定义block类型
四、注意点
1、block内部可以访问外部的局部变量,但默认情况下是不可修改的
2、如果要修改局部变量需要在变量前加上__block关键字(这里是两个_)
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------详细请查看:www.itheima.com
一、概念
block是一种基本数据类型
二、作用
block可以封装一段代码,在任何时候执行
三、使用方法
1、定义block
//定义一个返回值为int,带两个int参数的block int (^MySum)(int, int) = ^(int a, int b) { return a+b; };
// 定义一个返回值为空,没有行参的block void (^myblock)() = ^(){ NSLog(@"----------------"); };
// 如果block没有形参,可以省略后面的() void (^myblock)() = ^{ NSLog(@"----------------"); };
2、用typedef定义block类型
// 利用typedef定义block类型 typedef int (^MyBlock)(int, int); // 以后就可以利用MyBlock这种类型来定义block变量 MyBlock b1, b2; b1 = ^(int a, int b) { return a - b; }; MyBlock b3 = ^(int a, int b) { return a - b; };
四、注意点
1、block内部可以访问外部的局部变量,但默认情况下是不可修改的
2、如果要修改局部变量需要在变量前加上__block关键字(这里是两个_)
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------详细请查看:www.itheima.com
相关文章推荐
- 黑马程序员_OC基础08_description方法及SEL
- 黑马程序员_OC基础07_类的本质
- 黑马程序员_OC基础06_OC语法
- 一个合格的程序员应该读过哪些书
- 看看30年来职业冷热变迁 当下什么是铁饭碗
- 一个精神失常的程序员
- 惹恼程序员的十件事
- 程序员的职业发展
- 给程序员的VIM速查卡
- 《黑马程序员》String类涉及到的知识深化理解
- java三大框架常见面试题
- java常见面试题
- 面试常见问题之五
- 指针变量 如果指向的这块内存空间 已经被系统回收,程序员是不能使用这块内存
- 黑马程序员_单例设计模式
- 黑马程序员-----java入门一DAY14------java的异常处理机制以及类
- 25道shell面试题
- 黑马程序员——面向对象(一)
- 程序员面试、算法研究、编程艺术、红黑树、数据挖掘5大系列集锦
- j2EE经典面试题