美文网首页
Block的基本使用

Block的基本使用

作者: cjdale | 来源:发表于2018-07-02 11:22 被阅读0次

    在说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

    相关文章

      网友评论

          本文标题:Block的基本使用

          本文链接:https://www.haomeiwen.com/subject/spskuftx.html