ios-block的作为参数

来源:互联网 发布:linux重命名mv命令 编辑:程序博客网 时间:2024/05/16 12:06

大家在学习block的时候,不会的人,会觉得block比较复杂,很难理解. 尤其是在作为参数的时候. 一般在实际使用的时候我们一般会遇到block的两种方式, 一种是 作为 “成员变量”, 另一种是作为参数(初学者比较难理解的); 我们会用一些比较简单的方式进行理解.

初学者如果不熟悉的话,可以使用inline(ps:最好完全手打,不要用), 作为成员变量使用(就像普通变量),一般就是初始化,赋值,然后调用. 就像使用普通的变量一样,这里不做说明

inline.png

void(^blk)(int)/*声明*/ = ^(int a)/*赋值,a为形参*/ {        NSLog(@"%d",a);    };        blk(2);/*调用*/

=====作为参数使用====

作为参数使用只要记住 传递实参的时候, 相当于对block 进行赋值, 剩下的就好理解了

- (void)viewDidLoad {    [super viewDidLoad];            //这里是调用 didBlock: 方法    [self didBlock:^(int a) {        NSLog(@"%d",a);   /*调用方法时, 这里实参传递(就相当于赋值)*/    }];}/** *  方法 * *  @param blk1 参数名 */- (void)didBlock:(void(^)(int))blk1 /*声明*/{        blk1(2);/*调用*/    }
0 0
原创粉丝点击