Block的基本使用

在说Block的基本使用之前,我们先说Block在OC中的作用是什么?
** 保存代码的作用。通常用于回调。**

1、Block的声明

返回值类型(^block变量名)(参数列表)

void(^block)();

2、Block的定义(有三种方式定义)

第一种:

返回值类型(^block变量名)()= ^{};

void(^block1)() = ^(){
    
};

第二种:(如果没有参数,参数可以隐藏, 但是如果有参数,定义的时候必须要有参数,而且参数要有变量名

返回值类型(^block变量名)(参数列表)= ^(参数列表){};

void(^block2)(int a) = ^(int a){
    
};

第三种:不管Block有没有返回值, 都可以在等号后面把返回值类型省略

int(^block3)() = ^int{
    return 3;
};

3、Block的类型

void(^block4)(NSString *) = ^(NSString *str){
    return @"name";
};

上面block4的类型为: void(^)(NSString *)

我们也可以给block4起别名,类型重定义

typedef void(^Block4)(void);

那block4的定义就可以为下面的定义方式:

Block4  block4 = ^(NSString *str){
    return @"name";
};

block快捷方式:

inline

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 目录 Block概述 Block定义方式 Block保存代码 Block传值 Block对外部变量的传递 Bloc...
    子斌阅读 1,558评论 2赞 7
  • 1.Block代码块的基本使用 Block的作用Block主要用来保存一段代码Block可以封装一段代码,这段代码...
    断剑阅读 963评论 1赞 3
  • 例行科普 Block 是 iOS4 之后添加的一种语法结构,也成为闭包,或者匿名函数,在iOS开发过程中应用较多,...
    CJ_BLUE阅读 953评论 0赞 1
  • 一 Block基本常识 1.声明block声明没有参数没有返回值blockvoid(^block1)(); ...
    尕小天阅读 719评论 0赞 3
  • 一个很小资的台湾中年男作家张国立,写了篇“厨房进化论”,回顾了老妈的厨房、前妻的厨房、自己的厨房,更仔细描述了现在...
    该用户昵称未填写阅读 463评论 0赞 0

友情链接更多精彩内容