block的定义和使用


1.block可以用来保存一段代码,或者用来封装一段代码。--->代码段,代码块。
2.block的标志是^
3.block跟函数很像
可以保存代码;
可以有返回 值;
也可以有行参;
调用方式一样;
4.定义一个block
#pragma mark 不带参数的block
void (^outputblock)() = ^{
NSLog(@"------------");
};
outputblock();
}
5.带行参的block
#pragma mark - 带参数的block
int (^sumblock)(int, int) = ^(int a,int b){

return a+b;
};
int sum = sumblock(23,23);
int sum1 = sumblock(1,2);
NSLog(@"%d",sum1);
NSLog(@"%d",sum);


#pragma mark - 输出n条横线
void(^myblock)(int) = ^(int n){
for (int i = 0; i < n; i++) {
NSLog(@"-----------------");
};
};
myblock(10);
6.如果block没有行参,可以省略后边的小括号。
7.使用typedef来定义一个block的类型
typedef int(^Myblock)(int,int);
Myblock sumblock = ^(int a,int b){

return a+b;
}
Myblock minus = ^(int a,int b){
return a-b;
}

8.block可以访问外边的变量,但不可以修改外部的局部变量

优质内容筛选与推荐>>
1、JAVA bean属性名首字母不能大写
2、Codeforces_732D_(二分贪心)
3、[恢]hdu 1391
4、Hangfire Net Core2
5、(1)指针、引用、const限定符


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号