IOS基础_Block语法的简单使用

开始学IOS的时候没怎么接触过block语句,在后来用到的越来越多,就不得不学了,刚开始理解比较困难的,然后自己做了一个例子就慢慢理解了,不说废话了,上代码:


正常的简单地申明调用一个block语句是这样的:

//申明

int (^yxpBlock)(int, int)  =^(int a ) {return a*a ;};      

说明:返回值(^语句块名称)(传人参数类型)=^(传人参数){主体};


//调用

int result = square(5);


我建了一个测试项目包含了(yxpAppDelegate和yxpViewController)两个类


在yxpViewController类里面


申明了一个block语句类型

@classyxpViewController;

typedef void (^yxpBlock) (yxpViewController *);


在yxpViewController 申明了yxpBlock变量

@interface yxpViewController :UIViewController

@property (nonatomic,assign)yxpBlock yxpblock;

@end


在touchesBegan: withEvent:调用block语句 (调用block语句要用一根下划线,@propert默认提供)

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

{

   _yxpblock(self);

}


//在yxpAppDelegate中使用了block语句

__blockNSString *str=@"触摸屏幕";

yxpViewController *viewContro=[[yxpViewControlleralloc] init];

 viewContro.yxpblock=^(yxpViewController *viewController){

     NSLog(@"---------%@",str);

   };

   self.window.rootViewController=viewContro;


注意:block语句可以读取外部变量,但是不能写入,如果需要在block语句里修改外部变量,外部变量要用__block (两根下划线)标识

将这个例子弄懂相信你就对block语句有一个初步的了解了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值