A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© luguo 中级黑马   /  2015-6-8 18:47  /  792 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

block要掌握的东西
1> 如何定义block变量
int (^sumBlock)(int, int);
void (^myBlock)();

2> 如何利用block封装代码
^(int a, int b) {
    return a - b;
};

^() {
    NSLog(@"----------");
};

^ {
    NSLog(@"----------");
};

3> block访问外面变量
* block内部可以访问外面的变量
* 默认情况下,block内部不能修改外面的局部变量
* 给局部变量加上__block关键字,这个局部变量就可以在block内部修改

4> 利用typedef定义block类型
typedef int (^MyBlock)(int, int);
// 以后就可以利用MyBlock这种类型来定义block变量
MyBlock block;
MyBlock b1, b2;

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

MyBlock b3 = ^(int a, int b) {
    return a - b;
};

5 个回复

倒序浏览
不错的总结~ 加油,中级黑马:handshake
回复 使用道具 举报
学号c语言的函数指针对block的理解是有很大的帮助的
回复 使用道具 举报
指针很重要
回复 使用道具 举报
点赞。。。。。
回复 使用道具 举报
围观学习啦,加油努力!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马