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

9.22 利用block实现链式编程

作者: jayck | 来源:发表于2016-09-22 20:48 被阅读38次

    学习了一下链式编程,总结了一下,个人觉得就是利用block直接按照格式写就行。注意格式写法,其实就是多了个返回值😝

    下面用一个例子说明:

    首先:新建一个Animal类 (😔 好吧...又是Animal...)

    Animal.h文件

    - (Animal *(^)(NSString *name))dogname;
    - (Animal *(^)(NSString *food))eat;
    - (Animal *(^)())run;
    

    Animal.m文件

    - (Animal *(^)(NSString *name))dogname
    {
        return ^(NSString *name){
            NSLog(@"狗狗的名字叫: %@",name);
            return self;
        };
    }
    
    - (Animal *(^)(NSString *food))eat
    {
        return ^(NSString *food){
            NSLog(@"狗吃了:%@",food);
            return self;
            
        };
    }
    
    - (Animal *(^)())run{
        return ^(){
            NSLog(@"能跑3公里");
            return self;
        };
    }
    

    最后我们在Main函数(我没有写Main函数👻),或者ViewController.m里面调用即可。

    
      Animal *animal = [[Animal alloc] init];
      animal.dogname(@"哈士奇").eat(@"一根大骨头").run();
    

    打印结果如下:

    Paste_Image.png

    相关文章

      网友评论

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

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