美文网首页
利用Block实现链式编程

利用Block实现链式编程

作者: 42vio | 来源:发表于2016-03-30 14:51 被阅读88次

    1、Person的方法

    // 无参数
    - (Person *(^)())eat
    {
        return ^{
            NSLog(@"吃");
            return self;
        };
    }
    
    - (Person *(^)())play
    {
        return ^{
            NSLog(@"玩");
            return self;
        };
    }
    
    // 有参数
    - (Person *(^)( NSString* food ))eatFood
    {
        return ^( NSString* food ){
            NSLog(@"吃%@",food);
            return self;
        };
    }
    

    2、执行代码

    Person *p = [[Person alloc] init];
    
    // 无参数
    p.eat().play();
    
    // 有参数
    p.eatFood(@"foodName").play();
    

    总结:

    - ( 返回Block ) 方法名
    {
        return *{
            Block内部是具体执行代码;
            return self;
        };
    }
    

    相关文章

      网友评论

          本文标题:利用Block实现链式编程

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