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可以访问外边的变量,但不可以修改外部的局部变量
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值