ios-block的作为参数

大家在学习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);/*调用*/
    
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值